Commit graph

619 commits

Author SHA1 Message Date
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
modmuss50
ae6a43b923 Reduce console spam a bit 2019-11-07 12:56:43 +00:00
modmuss50
f85daec559
Reformat to use Fabric API's checkstyle (#137)
* Reformat to use Fabric API's checkstyle

* Fix

* Fix

* Update

* Travis and fixes

* possible fix for checkstyle?

* Helps if i push the checkstyle.xml file...

* Log checkstyle issues to console - used by travis

* Fix some more issues

* opps
2019-11-02 20:23:27 +00:00
modmuss50
2bd339241f Merge remote-tracking branch 'upstream/dev/0.2.6' into dev/0.2.6 2019-10-26 23:01:22 +01:00
modmuss50
94751530f4 Improve error message when using genSources on a 32bit java 2019-10-26 23:01:11 +01:00
zml
ba426c04fb Fix issues involving projects with modules that contain no java classes (#135)
Dependencies on a compileClasspath configuration, and
encountering nonexistant paths in the classpath prevented remapping from
completing successfully.

Additionally, adds the output of remapJar as an artifact before the task
executes to resolve a conflict with the signing plugin
2019-10-22 20:29:25 +01:00
modmuss50
13ae0ae263 Initial gradle 6.0 rc1 fixes, ugly but works. Closes #131 2019-10-22 20:28:00 +01:00
modmuss50
40d895095f Surround natives path in quotes to ensure it works with usernames with spaces. 2019-10-22 20:09:59 +01:00
modmuss50
7bcc6b98ff Rewrite native handling, fixes support for gradle 5.6.3 Fixes #81 Fixes #134
This will require run configs to be regenerated
Added cleanLoom, just a task that depends on cleanLoomBinaries and cleanLoomMappings
2019-10-22 20:04:38 +01:00
modmuss50
5a607963b5 Only process lines that contain :: should fix an odd StringIndexOutOfBoundsException 2019-10-21 20:57:10 +01:00
Daomephsta
61e60b28d2 Pass target project argument to ${project_loc} variable in generated Eclipse run configs (#133) 2019-09-26 08:33:24 +01:00
modmuss50
91c150c7e7 Simplify last fix 2019-09-06 20:09:13 +01:00
modmuss50
6bec4e592a add modCompileOnly and include deps in the implementation configuration in the run tasks 2019-09-06 19:59:45 +01:00
Fudge
7c6e9a37c0 copy non-java files into remapped sources jar (fixes #126 and #118) (#129)
* copy non-java files into remapped sources jar

* Simplify isJavaFile

* remove unused import

* Use path API
2019-08-23 11:59:16 +01:00
Elise
5ab5097b4d Mixin processing runs under scala, allowing java mixins to call scala methods (#125) 2019-08-23 11:59:06 +01:00
modmuss50
0b07f1badf Add a quick way to specify custom minecraft manifest urls 2019-08-15 17:45:08 +01:00
modmuss50
3455e087ab Fix genSources task not being in the fabric group 2019-08-02 15:15:40 +01:00
modmuss50
927c3f22cc Fix runClient/Server tasks not always including the mod 2019-07-29 12:28:46 +01:00
modmuss50
b315d9a553 Fix for files not being downloaded when the don't exist. Closes #122
@asiekierka im not sure if this is the correct fix so could you please verify, thanks.
2019-07-25 16:52:09 +01:00
asie
3435447a77 fix provider crash 2019-07-24 23:52:34 +02:00
asie
f26e77df11 remove debug code 2019-07-24 23:05:44 +02:00
asie
3c7d6fd87f caching/performance improvements 2019-07-24 23:04:45 +02:00
asie
ac9c7fc103 downgrade to gradle 4.9, fix tiny-remapper deprecations, restore old dev/noclassifier behaviour for default RemapJarTask settings 2019-07-24 22:34:27 +02:00
NikkyAI
dba326147a fix Input annotation for FileCollection (#119) 2019-07-06 16:15:56 +01:00
modmuss50
c2ccece4c2 Fix getRootProjectPersistentCache() not using the root project, closes #113 2019-06-24 11:23:28 +01:00
modmuss50
b09574eb70 Possible fix for intelij moudle not being selected in run configs 2019-06-24 11:21:08 +01:00
modmuss50
583cfc495b Fix warnings with task inputs 2019-06-24 11:20:28 +01:00
modmuss50
3e4ade38a7 Merge branch 'pull/110' into dev/0.2.5
# Conflicts:
#	gradle/wrapper/gradle-wrapper.properties
#	src/main/java/net/fabricmc/loom/util/MixinRefmapHelper.java
2019-06-24 11:17:45 +01:00
modmuss50
9f0cdbf1a4 Start work on 0.2.5, update to gradle 5.5-rc-3 2019-06-24 11:13:47 +01:00
Mitchell Skaggs
d5dad70de5
Update Gradle wrapper and make tests use older Gradle version to test compatibility 2019-06-16 13:31:58 -05:00
Mitchell Skaggs
ba6e435970
Add currently broken and disabled mixin build test 2019-06-15 20:23:55 -05:00
Mitchell Skaggs
c0a58d1bc7
Add simple build functional test 2019-06-15 16:28:37 -05:00
Mitchell Skaggs
52814a5b7b
Extract file generation from functional tests 2019-06-12 17:14:44 -05:00
Mitchell Skaggs
6376d197c6
Fix unused and broken imports in MixinRefmapHelper 2019-06-12 17:13:55 -05:00
Mitchell Skaggs
69df7ed774
Add simple integration tests for the plugin 2019-06-10 22:22:18 -05:00
Mitchell Skaggs
9e690f489f
Refactor RemapJarTask to extend from Jar
It may now be used in places that require AbstractArchiveTask such as Maven publications
2019-06-10 22:22:16 -05:00
asie
a12fd8e6eb fix remapped mods not including yarn minecraft version 2019-06-07 22:17:40 +02:00
Mitchell Skaggs
11246870fa Replace existing/duplicate nested jars (#106) 2019-06-07 10:24:36 +02:00
modmuss50
565d01b7c4 Fix license violations 2019-05-28 12:38:59 +01:00
asie
754c061e2b add modApi, modImplementation, modRuntimeOnly; try to improve source remapping performance 2019-05-28 09:23:27 +02:00
asie
393ced01b3 use mappings name in MinecraftMappedProvider 2019-05-27 22:23:24 +02:00
Pyrofab
467b696393 Make modCompile work with non-empty jar classifiers, fixes #82 (#96) 2019-05-27 22:18:19 +02:00
SquidDev
ae5beb0326 Depend on assemble rather than buildNeeded (#94)
This means test suites are not run before starting Minecraft.
2019-05-27 22:17:38 +02:00
Dinolek
aa3f1da1be Change Minecraft_*.launch to projectname_*.launch for genEclipseRuns (#93) 2019-05-27 22:16:44 +02:00
asie
4134c7ef50 pull in annotationProcessor dependencies from fabric-loader JSON too 2019-05-27 22:14:35 +02:00
asie
89d207d06b remove hacky mixin refmap remapper 2019-05-27 22:01:30 +02:00
modmuss50
e73febd7f4 Possible fix for #68 2019-05-26 16:02:35 +01:00
asie
4be5fe010f use compileClasspath to remap JARs 2019-05-18 11:51:34 +02:00
Adrian Siekierka
3d21ce811b fix DownloadUtil not downloading file if ETag present, but file is not 2019-05-17 12:59:40 +02:00
Adrian Siekierka
38c395b2e7 remapJar should, by default, add nested dependencies 2019-05-11 18:38:01 +02:00
asie
788df9cfc7 migrate RemapJarTask and RemapSourcesJarTask over to getters/setters for fields; make RemapJarTask use input and output locations instead of in-place renaming fluff 2019-05-11 00:53:50 +02:00
asie
1c56fb2eda updateMappings -> migrateMappings, new features 2019-05-10 13:55:17 +02:00
asie
64c21c01b8 add updateMappings task 2019-05-10 13:32:11 +02:00
asie
eff108344f refactor genSources into multiple reusable tasks 2019-05-10 11:48:15 +02:00
modmuss50
7e59a90463 Fix remap jar not always running on subsequent builds 2019-05-06 11:34:45 +01:00
Chocohead
1dd8e47122 Avoid trying to download things offline (#87) 2019-05-01 21:30:50 +02:00
Adrian Siekierka
88796b3c0f migrate away fabric-mixin-compile-extensions, fix root/sub project issues wrt mixin/loom presence hopefully once and for all 2019-04-30 00:43:26 +02:00
Adrian Siekierka
17b8aa7a70 fix #85, remove parts of deprecated code, update Mixin 2019-04-27 22:31:50 +02:00
Dinolek
2b4d9fd3bc eclipse wants run dir too (#84) 2019-04-27 18:45:07 +01:00
Adrian Siekierka
f768f9316e cease loading the same mappings file a million times 2019-04-24 19:32:35 +02:00
Adrian Siekierka
b5b3138e24 fix line number remapping, add option to disable mixin refmap remapping (unnecessary in loader 0.4.0+, but needs testting) 2019-04-23 22:50:39 +02:00
Adrian Siekierka
b4beaed968 make modCompile() transitive 2019-04-22 13:41:16 +02:00
Adrian Siekierka
b37079c931 backport FernFlowerTask and relevant systems from 0.3 2019-04-22 13:40:59 +02:00
Adrian Siekierka
3094d70731 apply nested JAR dependencies to every remapJar task which nests 2019-04-22 01:25:03 +02:00
Adrian Siekierka
7c25b0399c fix nestJar option default in RemapJar 2019-04-22 01:16:56 +02:00
Adrian Siekierka
6a7a00c426 add toggle to disable jar nesting in RemapJar tasks 2019-04-22 00:41:28 +02:00
Adrian Siekierka
221fcf2f51 migrate to try-with-resources 2019-04-22 00:39:09 +02:00
Adrian Siekierka
253c2ed15e support appending to existing <dependencies> keys in maven-publish hook; in came a buildscript uses .withXml, say 2019-04-21 23:50:35 +02:00
Adrian Siekierka
dc69315715
add correct Maven dependencies to maven-publish mod POMs (#79) 2019-04-21 18:42:51 +02:00
asie
9a33598608 remapped mods need to persist after a clean to allow "clean build" to work 2019-04-21 14:39:51 +02:00
Adrian Siekierka
07ab36a97d fix IDE generation file paths assuming CWD == project root, close #72 2019-04-21 11:48:00 +02:00
Adrian Siekierka
bed0bba2da update tiny-remapper, Mixin 2019-04-21 11:37:35 +02:00
Adrian Siekierka
bcae78333d rewrite source remapper to use tiny-mappings-parser 2019-04-21 11:29:19 +02:00
Adrian Siekierka
ab9d2d3fda store mixin maps in per-project build caches, move root project build cache to build/loom-cache from .gradle/ 2019-04-21 11:18:45 +02:00
Adrian Siekierka
988c7e483d fix unnecessary pointless LoomFernflowerDecompiler warnings 2019-04-20 23:31:52 +02:00
modmuss50
a97bb32210 Download assets when idea is syncing a project 2019-04-20 19:11:39 +01:00
Adrian Siekierka
085021dcbb update libraries; move asset downloading to task that does not run on every build, but only when it is required (runClient and IDEs) 2019-04-20 20:56:05 +02:00
Chocohead
03fb478166 Remap less (#77)
* Avoid remapping jars every time Loom starts

* Attempt to find installer JSON if it isn't found

Remapping Fabric-Loader used to find it every time, now we might skip that we have to go looking for it

* Log a little more when skipping things

Makes it more clear cut when it is avoiding doing things compared to failing after trying
2019-04-20 18:47:32 +01:00
Chocohead
a55ebd4e31 Download less each run (#73)
* Drastically reduce the amount of downloading Loom does

Uses ETags and last modify times to avoid downloading the version manifests, the game jars and assets

* Documentation is good

* Avoid string concatenation with debug off
2019-04-19 19:15:48 +01:00
Chocohead
e72ccc104c Enhance support for file modCompiles (#74)
* Enhance support for file dependencies

There's a reasonable chance this might work now, at least more than it did before

* Encourage Gradle to search better

Now it will find both remapped maveny and file dependencies

* Remove some very quiet boxing

Didn't think javac is capable of noticing that
2019-04-19 19:14:58 +01:00
modmuss50
e49af8ac39 Fix crash when parent project does not have loom 2019-04-15 09:12:48 +01:00
modmuss50
c9aaa68e5f Attempt to look in the root project for the loom version if required 2019-04-14 19:08:26 +01:00
modmuss50
60ec4c1fdb Fix broken assetIndex with versions with spaces 2019-04-11 18:58:40 +01:00
modmuss50
9eb9978390 Include loader's basic version parser, adds support for new yarn version separator 2019-04-10 17:35:38 +01:00
copygirl
26c548195e Fix VS Code launching in wrong folder (#66)
It appears that a backslash in the working directory (in "launch.json") is not correctly handled by the Java launcher or so, causing the game to run in the workspace folder instead of "run".
2019-04-09 14:36:54 +01:00
modmuss50
e1267680f2 Generate a barebones mod.json for libraries 2019-04-08 11:24:12 +01:00
modmuss50
f672b815c4 Dont expand out nested jars can be enabled if wanted. Will still strip the jars from the mod json 2019-04-08 10:50:30 +01:00
modmuss50
0206a4c59b Strip the contained jars from the mod meta data 2019-04-07 22:40:44 +01:00
modmuss50
36750634eb Merge remote-tracking branch 'remotes/origin/dev/0.2' into dev/0.2.1 2019-04-07 20:44:10 +01:00
Adrian Siekierka
cc05052fcb tweak mixin json findin heuristic 2019-04-07 22:39:08 +02:00
modmuss50
4b9db57aaa Make the sub project requirement a bit more intelligent, no longer blindly depends on all sub projects. 2019-04-07 20:38:10 +01:00
modmuss50
0d92da79c6 No longer auto apply evaluationDependsOnChildren, this can easily be done on a per mod basis 2019-04-07 20:32:39 +01:00
modmuss50
6f35014805 Extract nested jars from modCompile 2019-04-07 20:31:25 +01:00
modmuss50
02e9616622 Start on 0.2.1 2019-04-07 15:18:11 +01:00
Adrian Siekierka
c452b3ae8a update libraries 2019-04-07 13:33:48 +02:00
modmuss50
c43e771ef5 Only generate the run configs on the root project 2019-03-30 20:08:25 +00:00
Adrian Siekierka
21c31307c4 update Mixin, Stitch 2019-02-01 22:28:36 +01:00
Virtuoel
2ad6057992 Add working directory to Eclipse run config (#55) 2019-01-29 08:47:11 -05:00
Adrian Siekierka
5361c3d6f6 support dashes as mapping version separator 2019-01-24 17:59:23 +01:00
Falkreon
22507be8da Don't overwrite information set in RemapJar configure blocks after configure (#52) 2019-01-09 21:13:35 +00:00
modmuss50
a6507ef7a1 Fix another locked file, only a minor one this time 2019-01-04 20:27:27 +00:00
asie
32f3d924b0 fix JAR remapping 2018-12-31 14:37:47 +01:00
asie
e038abcb8e more gradle fixes 2018-12-31 00:42:49 +01:00
asie
6749c9688e fix gradle 5 support changes 2018-12-30 23:26:50 +01:00
Adrian Siekierka
0dcb7070be warn about refmap name after fields are populated, might help some things 2018-12-30 12:04:53 +01:00
Adrian Siekierka
6a77b5deaa gradle 5.0 support, fix #38 2018-12-30 12:03:25 +01:00
Adrian Siekierka
da03fd2827 apply terrible workaround for source remapper/JDT? bug (Mercury devs notified) 2018-12-28 22:08:36 +01:00
asie
cd54faba44 fix runtask rundir 2018-12-23 21:43:22 +01:00
asie
d4ae5e9b72 fix #48 2018-12-23 19:37:09 +01:00
asie
0b38f3ecc5 use more reliable renamer, update Stitch - fix #46 2018-12-23 19:18:40 +01:00
asie
4700788ead fix #47 2018-12-23 09:37:54 +01:00
modmuss50
8d326da8be Close jar when no fabric-installer.json found 2018-12-22 22:19:26 +00:00
Adrian Siekierka
4c625b45bc fix licenseFormat 2018-12-22 21:27:46 +01:00
therealfarfetchd
58512f2f47 Put tasks in 'fabric' group 2018-12-22 17:06:18 +01:00
Adrian Siekierka
baaf430fd8 mark Loom 0.2.0, update Mixin library 2018-12-22 15:46:58 +01:00
Adrian Siekierka
a39d0b6656 add cleanLoomMappings, close #36 2018-12-22 15:35:36 +01:00
Adrian Siekierka
d9b8c90b5f working source code remapping for mod dependencies 2018-12-22 15:29:46 +01:00
Adrian Siekierka
530896e41a make modCompile use flat directory artifact location instead of hack 2018-12-22 14:44:34 +01:00
Adrian Siekierka
a620812aab build functional intermediary-mapped sources JARs; update Stitch 2018-12-22 14:37:16 +01:00
modmuss50
2b85714448 Very early source remapping 2018-12-22 10:31:30 +01:00
Adrian Siekierka
79ec748a12 parse fabric-installer.json for mod devenvs, add loaderLaunchMethod param for that purpose, tweak LineNumberAdjustmentVisitor 2018-12-22 10:31:10 +01:00
asie
1445b8240a update dependencies, remap LVTs when mapping JAR 2018-12-20 12:32:02 +01:00
modmuss50
4731589579 Default idea's run config (when importing with idea's gradle tools) to use the _main module. Not a perfect fix but will now work with the default import settings. 2018-12-19 23:06:06 +00:00
modmuss50
278c8d2401 Add a way to disable IDE run config auto generation. (Only applys when importing with idea's gradle tools) 2018-12-19 23:05:19 +00:00
asie
e93292564d fix #26 2018-12-17 15:05:52 +01:00