Commit Graph

430 Commits (792a64e2efecb850e4752a298a4e3d6f50f55a64)

Author SHA1 Message Date
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