The attached patch makes two changes:
- Compares an item about to be added to cart with all similar ones which are already present there. The comparison runs over CartItemDetails? objects and if any difference is found, new item is added as a separate instance.
- Cart.add_item returns the item which has been added to cart. This is useful in applicatins which extend Satchmo and perform operations on CartItems?.
First change should not break anything.
Second one also shouldn't cause incompatibilities in external applications, as bool() evaluation of returned result stays the same.