tasgon / observable

See what's lagging your server. 20M+ downloads on CurseForge
https://www.curseforge.com/minecraft/mc-mods/observable
Mozilla Public License 2.0
88 stars 9 forks source link

Add modid to mixin method names #71

Closed ChiefArug closed 8 months ago

ChiefArug commented 10 months ago

Can you please add your modid to the names of all methods you add via mixin so that it is easy to tell the source of a mixin from a stacktrace, instead of needing to search the entirety of github or all mod jars in the mods folder for the source of a mixin.

Something like this:

    @Redirect(method = "tickNonPassenger", at = @At(value = "INVOKE",
            target = "Lnet/minecraft/world/entity/Entity;tick()V"))
    public final void obeservable$onTickNonPassenger(Entity entity) {
        obeservable$track(entity, Entity::tick);
    }

Example stacktrace where this would be useful:

    at TRANSFORMER/minecraft@1.19.2/net.minecraft.server.level.ServerChunkCache.handler$zec000$bailIfServerDead(ServerChunkCache.java:1596)
        ~ cut to shorten ~
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.world.level.biome.BiomeManager.m_204214_(BiomeManager.java:79)
    at TRANSFORMER/cold_sweat@2.2.2/com.momosoftworks.coldsweat.api.temperature.modifier.BiomeTempModifier.calculate(BiomeTempModifier.java:52)
    at TRANSFORMER/cold_sweat@2.2.2/com.momosoftworks.coldsweat.api.temperature.modifier.TempModifier.update(TempModifier.java:60)
    at TRANSFORMER/cold_sweat@2.2.2/com.momosoftworks.coldsweat.api.util.Temperature.apply(Temperature.java:114)
    at TRANSFORMER/cold_sweat@2.2.2/com.momosoftworks.coldsweat.api.util.Temperature.apply(Temperature.java:130)
    at TRANSFORMER/cold_sweat@2.2.2/com.momosoftworks.coldsweat.api.util.Temperature.getTemperatureAt(Temperature.java:138)
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.world.entity.item.ItemEntity.mdb608ee$lambda$tickFood$0$0(ItemEntity.java:1034)
    at TRANSFORMER/forge@43.2.21/net.minecraftforge.common.util.LazyOptional.ifPresent(LazyOptional.java:150)
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.world.entity.item.ItemEntity.handler$bfl000$tickFood(ItemEntity.java:1033)
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.world.entity.item.ItemEntity.m_8119_(ItemEntity.java:98)
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.server.level.ServerLevel.track(ServerLevel.java:6240)
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.server.level.ServerLevel.redirect$dko000$onTickNonPassenger(ServerLevel.java:6256)
        ~ cut to shorten ~
    at TRANSFORMER/minecraft@1.19.2/net.minecraft.server.MinecraftServer.m_206580_(MinecraftServer.java:244)
    at java.base/java.lang.Thread.run(Thread.java:833)

There are three mixins in here, all from different mods (your one is near the bottom). Because they don't have modids in them its impossible to tell which mods they are from without a decompiler or hoping the mod is on github and its not too generic a method name.

tasgon commented 8 months ago

Good idea, gonna roll a new release out tomorrow.