kaocha

Official support channel: https://clojureverse.org/c/projects/kaocha
plexus 2021-02-10T06:19:18.020Z

@holyjak yes, there's a built-in plugin for that, have a look at the documentation

Jakub Holý 2021-02-10T08:34:08.020300Z

ok, thanks, will have a better look then before then, Thaanks for pointing me to the plugins!

Jakub Holý 2021-02-10T08:35:05.020600Z

For posterity - I guess it is --plugin kaocha.plugin/profiling

1👍
plexus 2021-02-10T06:20:17.020100Z

You may then also have to turn off kaocha's classpath handling, or it will try to add any test-paths to the classpath itself

Jakub Holý 2021-02-10T08:34:08.020300Z

ok, thanks, will have a better look then before then, Thaanks for pointing me to the plugins!

Jakub Holý 2021-02-10T08:35:05.020600Z

For posterity - I guess it is --plugin kaocha.plugin/profiling

1👍
richiardiandrea 2021-02-10T20:07:23.021600Z

Hi there! My codebase has good a lot of Reflection Warnings that I would like to intercept and fail in CI. Is there some facility I can use with kaocha in order to achieve that?

richiardiandrea 2021-02-10T20:07:44.022Z

(is it a worthy idea anyways?

Alys Brooks 2021-02-10T22:33:11.023400Z

Not Kaocha specific, but it looks like the Clojure source has a non-exported macro that does this: https://github.com/clojure/clojure/blob/cbb3fdf787a00d3c1443794b97ed7fe4bef8e888/test/clojure/test_helper.clj#L126. You could try copying it to your test suite (probably with some sort of copyright notice)?

Alys Brooks 2021-02-10T22:37:45.025800Z

As for whether it's a good idea...it depends on how much reflection you have, and how important it is to avoid. If you have a large existing codebase that you haven't made special efforts to avoid reflection in, it might be pretty noisy. But if you're starting with relatively little reflection, and getting it down to zero is a priority, I could see it being helpful.

1👍
Alys Brooks 2021-02-10T22:39:05.027100Z

Are you trying to avoid reflection for performance reasons or for native-image compatibility or for some other reason?