Scala 2.13: Natural arg-order calling storeJsonBody #25333
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Scala 2.13 doesn't like the way the code was previously calling
commercial.controllers.Analytics.storeJsonBody()
- effectively, the first 3 arguments, then the last 2 implicit arguments, and then the middle non-implicitanalytics: String
argument. Although this worked in Scala 2.12, in Scala 2.13, this error was raised:"Cannot find any HTTP Request here" comes from the implicit
play.api.mvc.Request
not being found by the Scala 2.13 compiler, which I guess was confused by the method parameter order!The fix is to just inline the code a bit, and supply the middle
analytics: String
argument in it's natural 2nd position,and allow the compiler to then find the last pair of implicit arguments.