com-lihaoyi / mill

Mill is a fast JVM build tool that supports Java and Scala. 2-4x faster than Gradle and 4-10x faster than Maven for common workflows, Mill aims to make your project’s build process performant, maintainable, and flexible
https://mill-build.org/
MIT License
2.2k stars 350 forks source link

`twirlIvyDeps` don't align with twirl dependencies on scala 3 #2388

Closed mrdziuban closed 1 year ago

mrdziuban commented 1 year ago

The default twirlIvyDeps refer to scala-parser-combinators:1.1.2 but in the latest twirl 1.6 milestone/RC releases, they've updated to use scala-parser-combinators:2.1.0 when on scala 3.

This causes a resolution error that can't be fixed just by adding the correct scala-parser-combinators version to ivyDeps. I was able to resolve this by overriding twirlIvyDeps in my build.sc

lefou commented 1 year ago

Looks like we need the same switch based on the twirl version as in the twirl repository you linked. Feel free to send a pull request.

mrdziuban commented 1 year ago

@lefou out of curiosity, why is having scala-parser-combinators in twirlIvyDeps necessary? I would have guessed that it would be pulled in transitively from depending on twirl itself

lefou commented 1 year ago

@lefou out of curiosity, why is having scala-parser-combinators in twirlIvyDeps necessary? I would have guessed that it would be pulled in transitively from depending on twirl itself

Yeah, that was also my first though. I don't know. You could dig in the git history, if there is some clue, or just try to remove it. Maybe, it is/was an optional dependency or it was too old for some twirl version.

mrdziuban commented 1 year ago

Huh yeah it is optional for some reason, and tests in mill fail without it there 🤷‍♂️