This question was answered on our Cruise IQ show on August 23, 2017.
Currently there are no restrictions on bringing certain snacks like nuts, crackers, candies and non-perishable ready-to eat foods or formula for infants onboard as long as they are unopened. Foods like meat, cheese, produce and fruits are not permitted. Cruise Lines have started forbidding guests from bringing beverages like soda and bottled water onboard. Norwegian Cruise Line and Carnival Cruise Line strictly forbid and enforce this policy on their ships. Other Cruise Lines like Royal Caribbean, Holland America and Princess are more flexible as long as you bring them onboard in your carry-on baggage. You may be able to bring a case of water or soda and have it delivered to your room if you put a luggage tag on it, but there is no guarantee. Disney Cruise Line has one of the more open policies for bringing beverages onboard. Guests may bring 2 bottles of wine and 6 cans of beer at embarkation and in each port they visit. Most other cruise lines restrict bringing alcohol onboard, with an exception of one or two bottles of wine at embarkation. Norwegian Cruise Line will let you bring as much wine onboard as you want, but you’ll need to pay a $15 corkage fee per bottle.