My experience with Pants has been mixed so far. Th...
# welcome
f
My experience with Pants has been mixed so far. The Scala support doesn't feel really that mature yet, e. g. I need to add
_2.13
suffix for library dependencies, need to add standard library dependencies, BSP support is incomplete (VS Code support), and the documentation is sometimes not so straight-forward. I tried the mill build tool once and found it easier and more hassle-free to set up, which isn't surprising given that it's made specifically for Scala. But it doesn't have a remote cache, so it doesn't solve the problem for us. On the other hand, I love the fine grained dependency graph that Pants builds. In sbt, the dependency graph works on the module level, so the complete module needs to typecheck before you can run any test at all, even if the class with the type error is completely unrelated to the test that you're trying to run. Pants will happily run your tests even when you have type errors in some unrelated file. And it even caches results for tests, so I don't need to ever think again about which tests I need to run, I just run them all and rely on caching. That's pretty impressive
h
@witty-crayon-22786 @ancient-vegetable-10556 is needing to add the 2.13 suffix this behaving as expected ? I thought we handled that
f
well it's called jvm_artifact, so it's necessary because it doesn't know if you're adding a Scala or Java dependency
You need to make that explicit in other build systems as well, like with the
%%
operator in sbt
w
support for including the stable version was recently added… probably not even in the 2.17.x branch: only 2.18.x
f
@witty-crayon-22786, cool!
Is that documented? How do I use it?
w
it landed https://github.com/pantsbuild/pants/pull/19128 (and #19187, and #19190), which is available after
2.18.0.dev1
: the PR has some examples
f
Thanks @witty-crayon-22786