Ultimately, I have to agree with the voices here that state changing the established behaviour of
toString would by an entirely unacceptable breaking change.
We all want better string representations of case classes, but
toString most certainly isn’t the way to do it. Scala isn’t Kotlin, we don’t need to try and shoehorn such behaviour into a special-case one-size-fits-all solution like Kotlin does.
We have typeclasses.
With Dotty/Scala 3 the situation is going to be better still, with typeclasses and some degree of generic derivation baked into the heart of the language - this is the right place to target. We could easily have a range of typeclasses supporting existing behaviour, quoted strings, exposed parameter names, multi-line trees (like pprint), graphviz .dot syntax, etc, etc
There’s no good reason to force just one solution on everyone, and even less reason to break the existing approach that people will be assuming in their tests.