Fork me on GitHub
#polylith
<
2024-02-13
>
J13:02:27

Hi guys! If I use a lib like https://github.com/fulcrologic/guardrails. Should I spec component interface functions, component core functions or both?

seancorfield18:02:33

That seems like a subjective decision. I wouldn't, personally, because I don't use Spec as a "type system" -- I use it mostly around the edges of my programs to make sure inputs and outputs of the system conform to expectations. I use it very sparingly inside my program. Other people like to use Spec instrumentation pretty liberally so they're going to give you a different answer.

👍 1
Stefan06:02:43

Yeah like Sean says we have a different approach. We're spec'ing more and more our interfaces. We find it helps us when you haven't seen a piece of code for a while, to figure out what is expected to go in and come out. YMMV.

👍 1
tengstrand19:02:33

https://cljdoc.org/d/polylith/clj-poly/0.2.19-SNAPSHOT/doc/example-systems#_demo_rama_electric #10 may be the last update before we release 0.2.19 so please check it out. It only contains documentation updates, where one of them is that https://cljdoc.org/d/polylith/clj-poly/0.2.19-SNAPSHOT/doc/example-systems#_demo_rama_electric has been added to the list of example systems. Changes since 0.2.18 are listed https://github.com/polyfy/polylith/blob/c5895b7cfc8329db89e9cb348ac1b920dedb1278/next-release.adoc.

👍 2
seancorfield19:02:41

We're currently depending on 0.2.19-SNAPSHOT so we're testing each new version as a matter of course. Thank you for all the updates and being receptive to rolling the EDN file change back after some folks tried using it. The check/`test` API additions are very nice -- that has enabled us to streamline our build.clj / CI pipeline (we've essentially merged :build and :poly aliases so we can avoid a process creation to run poly commands from our build script).

tengstrand19:02:05

Sounds great.

tengstrand20:02:20

It was a little bit of a struggle to get it right this time!

imre10:02:43

poly+rama+electric yum