By Alvin Alexander. Last updated: July 2, 2020
Whenever I used to get the Scala REPL warning message, “There were deprecation warnings, re-run with -deprecation,” I used to have to restart the REPL with the -deprecation
flag to see the warning message, like this:
$ scala -deprecation
That works, but sadly, you had to lose your entire REPL session to run it.
Solution: Use “:warnings”
Thanks to the Scala gods, this is no longer necessary in Scala 2.10 (and newer). Now, when you get the REPL “deprecation” warning message, like this:
scala> val x = <pizza><topping>cheese</topping><topping>sausage</topping></pizza> x: scala.xml.Elem = <pizza><topping>cheese</topping><topping>sausage</topping></pizza> scala> scala.xml.Utility.toXML(x, minimizeTags = true) warning: there were 1 deprecation warnings; re-run with -deprecation for details res0: StringBuilder = <pizza><topping>cheese</topping><topping>sausage</topping></pizza>
Just type :warnings
to see the actual deprecation message, like so:
scala> :warnings <console>:9: warning: method toXML in object Utility is deprecated: Please use `serialize` instead and specify a `minimizeTags` parameter scala.xml.Utility.toXML(x, minimizeTags = true) ^
*I bow to the Scala gods in thanks.*