I noticed that the sweep_all command warns when it is about to merge outputs from the same transaction, which I appreciate, as that would kind of break the point of ring signatures and make my transactions traceable, after all. But then it provides no alternative... I'm trying to spend by amount, in the hopes that the wallet will always pick the largest output, but that's not a fail-proof solution, as the wallet could very well merge smaller ones instead.
Are there any plans to implement something like sweep_output command, or a transfer command where you can pick the outputs, or in the worst case, something like raw transactions in Bitcoin?
PS: That actually raises another question. I bought some Monero and the exchange credited me, in the same transaction, two different outputs, both with hidden amounts. What's the point? I understand this was necessary before RingCT, but now that the amounts are hidden, why would the exchange wallet create more than one output for me?