Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
9b16164
Translation updates (#4027)
FabricMCBot Aug 26, 2024
3fc0e55
Dont invoke ItemGroupEvents.MODIFY_ENTRIES_ALL for the OP tab, when t…
AshyBoxy Aug 26, 2024
2122d82
After Damage Event (#4051)
TheDeathlyCow Aug 26, 2024
f054fb5
Bump version
modmuss50 Aug 26, 2024
3d2379b
Add `c:animal_foods` tag (#4080)
TelepathicGrunt Sep 10, 2024
aa34100
New Crowdin updates (#4059)
FabricMCBot Sep 10, 2024
4053855
Add missing `minecraft:enchantable/vanishing` to `c:enchantables` (#4…
TelepathicGrunt Sep 10, 2024
d38f898
Add TransferVariant.getComponentMap() (#4074)
modmuss50 Sep 10, 2024
427f7cb
Use unix line endings on all files (#4079)
modmuss50 Sep 10, 2024
e521378
Bump version
modmuss50 Sep 10, 2024
d5debae
Modify Enchantment and Fabric Component Map Builder Extensions (#4085)
TheDeathlyCow Sep 23, 2024
9d3173d
New Crowdin updates (#4086)
FabricMCBot Sep 23, 2024
9d22c5f
Create `c:obsidians` block and item tag (#4088)
TelepathicGrunt Sep 23, 2024
c7469b2
Add access to ClientConfigurationNetworkHandler in context (#4097)
Earthcomputer Sep 23, 2024
5253a6d
Add ItemVariant#withComponentChanges and FluidVariant#withComponentCh…
BasiqueEvangelist Sep 23, 2024
d831205
Fix cherry pick issues
modmuss50 Sep 23, 2024
3b9245a
Bump version
modmuss50 Sep 23, 2024
9176687
Quiltify the Fabric API
OroArmor Aug 12, 2024
7100fad
Add core:qsl_base
OroArmor Aug 16, 2024
effa407
Add core:crash_info
OroArmor Aug 16, 2024
87ec422
Add core:lifecycle_events
OroArmor Aug 16, 2024
a2db1df
Add core:networking
OroArmor Sep 27, 2024
66ac4cd
Add core:registry
OroArmor Sep 18, 2025
b306e85
Add core:resource_loader
OroArmor Sep 2, 2024
be8d022
Add block:block_content_registry
OroArmor Sep 1, 2024
705af1c
Add block:block_entity
OroArmor Sep 1, 2024
0ffc64f
Add block:block_extensions
OroArmor Sep 1, 2024
4f71fa3
Add entity:entity_events
OroArmor Sep 27, 2024
c0889dd
Add entity:entity_extensions
OroArmor Sep 27, 2024
5cd4791
Add gui:screen
OroArmor Sep 28, 2024
94acc6e
Add gui:tooltip
OroArmor Sep 28, 2024
0cd96f2
Add item:item_content_registry
OroArmor Sep 15, 2025
857f3b1
Add item:item_setting
OroArmor Sep 15, 2025
c451b93
Add management:client_command
OroArmor Sep 15, 2025
5be9d83
Add management:command
OroArmor Sep 15, 2025
e1f960d
Add rendering:entity_rendering
OroArmor Sep 15, 2025
8e9a97b
Add worldgen:biome
OroArmor Sep 15, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2016, 2017, 2018, 2019 FabricMC
* Copyright 2022 The Quilt Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -55,7 +56,6 @@
import net.fabricmc.fabric.api.event.registry.DynamicRegistries;
import net.fabricmc.fabric.api.resource.conditions.v1.ResourceCondition;
import net.fabricmc.fabric.impl.datagen.FabricDataGenHelper;
import net.fabricmc.fabric.impl.registry.sync.DynamicRegistriesImpl;

/**
* A provider to help with data-generation of dynamic registry objects,
Expand Down Expand Up @@ -269,7 +269,7 @@ public CompletableFuture<?> run(DataWriter writer) {

private <T> CompletableFuture<?> writeRegistryEntries(DataWriter writer, RegistryOps<JsonElement> ops, RegistryEntries<T> entries) {
final RegistryKey<? extends Registry<T>> registry = entries.registry;
final boolean shouldOmitNamespace = registry.getValue().getNamespace().equals(Identifier.DEFAULT_NAMESPACE) || !DynamicRegistriesImpl.FABRIC_DYNAMIC_REGISTRY_KEYS.contains(registry);
final boolean shouldOmitNamespace = registry.getValue().getNamespace().equals(Identifier.DEFAULT_NAMESPACE);
final String directoryName = shouldOmitNamespace ? registry.getValue().getPath() : registry.getValue().getNamespace() + "/" + registry.getValue().getPath();
final DataOutput.PathResolver pathResolver = output.getResolver(DataOutput.OutputType.DATA_PACK, directoryName);
final List<CompletableFuture<?>> futures = new ArrayList<>();
Expand Down
4 changes: 4 additions & 0 deletions fabric-registry-sync-v0/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,7 @@ testDependencies(project, [
':fabric-lifecycle-events-v1',
':fabric-command-api-v2',
])

dependencies {
modApi getQslModule("core", "registry")
}

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2016, 2017, 2018, 2019 FabricMC
* Copyright 2022 The Quilt Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand All @@ -25,36 +26,23 @@
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.item.ItemGroups;
import net.minecraft.registry.Registries;

import net.fabricmc.fabric.impl.registry.sync.RegistrySyncManager;
import net.fabricmc.fabric.impl.registry.sync.RemapException;
import net.fabricmc.fabric.impl.registry.sync.trackers.vanilla.BlockInitTracker;
import net.fabricmc.fabric.mixin.registry.sync.RegistriesAccessor;

@Mixin(MinecraftClient.class)
public class MinecraftClientMixin {
@Shadow
@Final
private static Logger LOGGER;

// Unmap the registry before loading a new SP/MP setup.
@Inject(at = @At("RETURN"), method = "disconnect(Lnet/minecraft/client/gui/screen/Screen;Z)V")
public void disconnectAfter(Screen disconnectionScreen, boolean bl, CallbackInfo ci) {
try {
RegistrySyncManager.unmap();
} catch (RemapException e) {
LOGGER.warn("Failed to unmap Fabric registries!", e);
}
}

@Inject(method = "<init>", at = @At(value = "INVOKE", target = "Ljava/lang/Thread;currentThread()Ljava/lang/Thread;"))
private void afterModInit(CallbackInfo ci) {
// Freeze the registries on the client
LOGGER.debug("Freezing registries");
Registries.bootstrap();
BlockInitTracker.postFreeze();
RegistriesAccessor.invokeFreezeRegistries();
RegistriesAccessor.invokeValidate(Registries.REGISTRIES);
ItemGroups.collect();
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,7 @@
"package": "net.fabricmc.fabric.mixin.registry.sync.client",
"compatibilityLevel": "JAVA_17",
"client": [
"BlockColorsMixin",
"ClientRegistriesDynamicRegistriesMixin",
"ItemColorsMixin",
"ItemModelsMixin",
"MinecraftClientMixin",
"ParticleManagerMixin"
"MinecraftClientMixin"
],
"injectors": {
"defaultRequire": 1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2016, 2017, 2018, 2019 FabricMC
* Copyright 2022 The Quilt Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand All @@ -25,8 +26,6 @@
import net.minecraft.registry.RegistryKey;
import net.minecraft.registry.RegistryLoader;

import net.fabricmc.fabric.impl.registry.sync.DynamicRegistriesImpl;

/**
* Contains methods for registering and accessing dynamic {@linkplain Registry registries}.
*
Expand Down Expand Up @@ -73,7 +72,10 @@
* // @link substring=registerSynced target="#registerSynced(RegistryKey, Codec, Codec, SyncOption...)":
* DynamicRegistries.registerSynced(MY_DATA_KEY, MyData.CODEC, MyData.NETWORK_CODEC);
* }
*
* @deprecated see {@link org.quiltmc.qsl.registry.api.dynamic.DynamicMetaRegistry}
*/
@Deprecated
public final class DynamicRegistries {
private DynamicRegistries() {
}
Expand All @@ -86,7 +88,7 @@ private DynamicRegistries() {
* @return an unmodifiable list of all dynamic registries
*/
public static @Unmodifiable List<RegistryLoader.Entry<?>> getDynamicRegistries() {
return DynamicRegistriesImpl.getDynamicRegistries();
return List.copyOf(RegistryLoader.DYNAMIC_REGISTRIES);
}

/**
Expand All @@ -100,7 +102,7 @@ private DynamicRegistries() {
* @param <T> the entry type of the registry
*/
public static <T> void register(RegistryKey<? extends Registry<T>> key, Codec<T> codec) {
DynamicRegistriesImpl.register(key, codec);
org.quiltmc.qsl.registry.api.dynamic.DynamicMetaRegistry.register(key, codec);
}

/**
Expand Down Expand Up @@ -140,8 +142,7 @@ public static <T> void registerSynced(RegistryKey<? extends Registry<T>> key, Co
* @param <T> the entry type of the registry
*/
public static <T> void registerSynced(RegistryKey<? extends Registry<T>> key, Codec<T> dataCodec, Codec<T> networkCodec, SyncOption... options) {
DynamicRegistriesImpl.register(key, dataCodec);
DynamicRegistriesImpl.addSyncedRegistry(key, networkCodec, options);
org.quiltmc.qsl.registry.api.dynamic.DynamicMetaRegistry.registerSynced(key, dataCodec, networkCodec);
}

/**
Expand Down
Loading