Implementing PartialOrd for Vec is a fairly strange choice to be honest. I'm curious why lexicographic ordering was chosen for this.
Lexicographic order is the most common choice for vector; the other reasonable choice is length-then-lexicographic.
Ironically though, that should be actually more objectionable than ordering arrays by lexicographical order of elements, because the underlying code point order is pretty much useless for any other purpose than having some arbitrary deterministic order. Meaningfully ordering strings is an inherently locale-dependent operation, and PartialOrd has no way to take this into account.
(I can also think of situations where you'd pass around strings as vectors of characters, but I think that's a bit of a stretch.)