Commit graph

294 commits

Author SHA1 Message Date
modmuss50
78c934aed5
Move remapped mods into a full local maven repo (#300) 2020-12-21 19:33:23 +00:00
modmuss50
d1281be741
Migrate to access-widener library (#294) 2020-11-15 16:15:02 +00:00
Jamie Mansfield
db623157aa
Use Mercury 0.1.0-rc1 (#301) 2020-11-15 16:03:16 +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
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
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
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
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
Reece Dunham
1955bcb2ea General cleanup 2020-07-26 21:32:10 +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
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
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
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
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
6323137f56 update DLI 2020-06-02 12:35:55 +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
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
modmuss50
7a56779368 Fix access widener remapping 2020-05-14 01:07:54 +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
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
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
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
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
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
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
5baceb365a Revert last 2 commits. 2019-12-11 15:46:42 +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
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
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
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
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
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
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
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
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
6376d197c6
Fix unused and broken imports in MixinRefmapHelper 2019-06-12 17:13:55 -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
Pyrofab
467b696393 Make modCompile work with non-empty jar classifiers, fixes #82 (#96) 2019-05-27 22:18:19 +02:00
asie
4134c7ef50 pull in annotationProcessor dependencies from fabric-loader JSON too 2019-05-27 22:14:35 +02:00