The bug
Villagers generated in older versions will trade carved pumpkins instead of normal ones in the 1.13 snapshots. Newly generated villagers, however will trade normal, uncarved pumpkins.
How to reproduce
Create a world in 1.12 and spawn a farmer villager
Do one trade so it unlocks his pumpkin trade
→ Note that the villager will trade pumpkins (only kind there is)Open the world in the snapshot (18w20c)
→ Note that the villager will now trade carved pumpkins and won't accept normal pumpkinsSpawn a new farmer and do a trade
→ Note that this new villager will trade normal (uncarved) pumpkins and won't accept the carved ones
It looks like villager trades are stored as numeric id's instead of string string id's.