Commit graph

27 commits

Author SHA1 Message Date
Shnupbups
a680b9b44b
Add some more TAWs to the Datagen Module (#2322)
- Added transitive-accessible wideners for `BlockStateModelGenerator$TintType`, `BlockStateModelGenerator$BlockTexturePool`, `BlockStateModelGenerator$LogTexturePool`, and `BlockStateModelGenerator$BuiltinModelPool` classes
- Added transitive-accessible widener for `TexturedModel#makeFactory` method
- Moved transitive-accessible wideners for `ItemModelGenerator` methods to the generate run, so it covers the 2 new methods and any future ones
- Fixed `generateAccessWideners` task so it can now find the jar
- Tweaked the whitespace in the accesswidener file a bit
2022-06-19 19:17:44 +01:00
modmuss50
2a5b9210c6 1.19-rc2 2022-06-04 21:32:33 +01:00
Technici4n
123f0c73d5 A few datagen fixes (#2250)
* Include datagen in the production fatjar. Closes #2228

* Allow exclusion of block loot tables from strict validation. Closes #2241

* Auto-generate item models even when strict validation is disabled. Fixes #2240

(cherry picked from commit 4d962b4e9e)
2022-06-04 21:09:22 +01:00
modmuss50
9ff28f4026
Split client only code into its own sourceset. (#2179)
A common source of crashes on modded Minecraft servers comes from modders accidently calling client only code from the client, this PR is another large step towards elimitating that.

This PR has been months in the making and years in the planning, requiring major changes to Loom & Loader. In recent Minecraft versions Mojang has made it easier than ever to cleanly split the jar, going against the status-quo of merging the client and server into one jar.

From the start we have designed Fabric to have a very clear split between client and common (client & server) code. Fabric has always encoraged keeping client only code seprate from the server, this can be seen at a fundamental level with the entrypoints in Loader. Fabric API's have all been designed with this mind.

This PR provides a compile safety net around Fabric API using client only code on the server. Even though there are almost 400 changed files, minimal changes beyond moving the files were required to achieve this in Fabric API, thanks to the effort of all contributors in the past.

These changes should not affect modders or players in anyway, a single "universal" jar is still produced. Im happy to awnswer any questions.
2022-05-21 16:26:46 +01:00
modmuss50
55043e695a 1.19-pre1 2022-05-18 19:16:52 +01:00
modmuss50
55e82473ab 22w19a 2022-05-12 21:58:35 +01:00
Player
729842f055 22w18a 2022-05-04 21:56:29 +02:00
modmuss50
ec94c6f636
22w16b
Co-authored-by: Player <player@player.to>
2022-04-20 22:22:10 +01:00
modmuss50
734df6198f Fix datagen failures not exiting with a none zero exit code. (#2141)
* Fix datagen failures not exiting with a none zero exit code.

* Checkstyle :)
2022-04-17 19:49:15 +01:00
modmuss50
c65ffd6601 Fix FabricTagProvider generating tags in incorrect directories. 2022-04-17 19:49:15 +01:00
modmuss50
8eae451042 22w15a 2022-04-13 19:03:57 +01:00
modmuss50
717abbc48a 22w14a 2022-04-06 21:49:45 +01:00
modmuss50
09a7afff2f 22w13a 2022-03-31 18:38:32 +01:00
Player
7463d67c85 22w11a 2022-03-18 00:33:37 +01:00
Deximus-Maximus
6d3e56363a
Fix optional tag from tagkey generation (#2070) 2022-03-13 13:51:58 +00:00
modmuss50
b5a7ab53f9 1.18.2-rc1 - AW build fix due to mapping changes. 2022-02-25 17:47:36 +00:00
modmuss50
ebd24f870f
Misc FabricTagProvider fixes and improvements. (#2019)
* Misc tag data gen fixes.

* Fix backwards compat issue.
2022-02-23 16:17:26 +00:00
modmuss50
d1027f7d5e Update mappings. 2022-02-19 17:05:08 +00:00
modmuss50
5a05a77ac9 22w07a 2022-02-16 19:24:00 +00:00
modmuss50
d882b91555
Port to 22w06a (#1989)
This snapshot is possibly one of the most impactful for API we have ever had. This PR is an inital port to support 22w06a, stuff will be missing and broken. 

# Removed modules:
- fabric-mining-levels-v0 - Previously deprecated
- fabric-object-builders-v0 - Previously deprecated
- fabric-tag-extensions-v0
- fabric-tool-attribute-api-v1

# Modules with API breaking changes:
- fabric-biome-api-v1
- fabric-content-registries-v0
- fabric-data-generation-api-v1
- fabric-mining-level-api-v1
- fabric-object-builder-api-v1
- fabric-resource-conditions-api-v1
- fabric-structure-api-v1

# Impactful API changes:
### fabric-object-builder-api-v1
- Removed - FabricBlockSettings.breakByHand
- Removed - FabricBlockSettings.breakByTool  - Previously deprecated

# Notable changes

- fabric-registry-sync-v0 moves vanilla's new registry freezing to a later point in time, allowing mods to add to the registry during init.

# Known issues:
- ServerBugfixMixin used to fix https://bugs.mojang.com/browse/MC-195468 has not yet been ported.
2022-02-11 17:02:44 +00:00
Shnupbups
9b5f02e4eb
Datagen Renames (#1910)
* Renames

* whoops

* Return dataGenerator fields in deprecated classes

* fix up conflicts

* Update FabricRecipesProvider.java
2022-02-11 13:27:31 +00:00
modmuss50
d7c144a830
Migrate to SLF4j and update loom (#1960)
* Migrate to SLF4j and update loom

* Update loom

* Update to latest loom
2022-01-30 21:37:23 +00:00
Technici4n
12540453db Fabric Resource Conditions (#1656)
* First completed draft

* Update PR, should be close to ready now

* Add fluid/item_tags_populated conditions

* Log processed resource with trace log level

* Use debug instead of trace log level

* Apply suggestions from code review

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

* Code review suggestions

* writeAdditional -> writeParameters

* Apply suggestions from code review
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

* CONDITION_ID -> CONDITION_ID_KEY
2022-01-14 15:10:43 +00:00
modmuss50
9b1557c1f3
Allow adding vanilla tags to FabricTagBuilder (#1926)
Co-authored-by: deirn <deirn@bai.lol>
2021-12-22 18:55:37 +00:00
deirn
c568f923d0
Add datagen support for dynamic registry tags (#1890)
* Add datagen support for dynamic registry tags

* Update according review

* Make FabricTagBuilder final

* Throw AssertionError if expected errors didn't happen
2021-12-22 18:25:57 +00:00
Shnupbups
252fd7d614
Datagen Additions (#1911)
* Datagen additions

Now separated from #1889

* add throws javadoc tag, and test for copying a block tag that contains a block without an item form to an item tag

* linkplain

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

* Add javadoc note about copy filtering

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
2021-12-22 17:09:51 +00:00
modmuss50
3fec4ad922
Fabric Data Generation API (#1824)
* First look at datagen

* First pass on item/block models

* Tags

* Advancements + BlockFamilies

* Loot tables

* Cleanup

* Start on javadocs, and cleanup

* Update for new mappings.

* Added client-side entrypoint and more logging.

* Complete javadoc, add modid filter and misc fixes/cleanup.

* Minor fixes.

* Renames and misc changes.

* Strict validation fixes.

* Apply suggestions from code review

Co-authored-by: Shnupbups <shnupbups@gmail.com>

* Update fabric-data-generation-api-v1/src/main/java/net/fabricmc/fabric/api/datagen/v1/FabricDataGenerator.java

Co-authored-by: Shnupbups <shnupbups@gmail.com>

* Update fabric-data-generation-api-v1/src/main/java/net/fabricmc/fabric/api/datagen/v1/FabricDataGenerator.java

Co-authored-by: Shnupbups <shnupbups@gmail.com>

* Review fixes.

* Set generated dir as resources not sources.

Co-authored-by: Sebastian Hartte <shartte@users.noreply.github.com>
Co-authored-by: Shnupbups <shnupbups@gmail.com>
2021-12-03 13:35:29 +00:00