I would like the ability to choose a site-wide policy that dictates whether shipping options are shown on the product page or checkout. All our products follow the same shipping policies, so having customers choose this on the product page doesn't really make sense, and confuses some customers.
If two items in the cart don't support the same shipping option, then an error message could be displayed under that product saying "This product doesn't support local local pickup", for example. The customer would either need to change the shipping method or remove that particular item.
Square Community