I've included a minimal datapack that will cook fish caught by a fishing rod when the fishing rod has flame. This datapack will work in 1.20.6 but stopped working in 24w18a. It will now also cook the fish if the rod is enchanted with lure (or any other enchantment).
Steps to verify the datapack is working:
Install the datapack
Give yourself an unenchanted fishing rod and catch a fish
Do the same with a fishing rod with lure 3
/give @s minecraft:fishing_rod[minecraft:enchantments={"minecraft:flame":1}
Catch a fish and see that it is indeed cooked this time
Steps to reproduce the bug:
Upgrade the world to 24w18a
Catch an uncooked fish with the unenchanted rod
Catch a cooked fish with the flame fishing rod
Catch a cooked fish with the lure fishing rod
Step 4 is the bug, it should have worked just like 1.20.6
This may be only the case for fishing. Enderchests still drop correctly with and without silk touch
Not a bug; the enchantment sub-predicate format changed in 24w18a. The
enchantment
field is now calledenchantment{*}s{*}
.