Hosts, if you are asking for contributions, be specific. "Green bean casserole for 30" is better than "Pie". If you choose not to be specific, or not to clarify, then you have no right to get upset when somebody doesn't show up with what you were expecting. If you have expectations, those need to be clear.
Of course, that last sentence applies to guests as well. If it's just not Thanksgiving/New Year's/Christmas without x y or z, please let your host know (nicely of course, not in a demanding way). They may be able to incorporate it or let you know that won't be possible, so you can decide if you want to attend.