Fork me on GitHub
#emacs
<
2023-05-08
>
kpav20:05:50

Any other polylith users here? Im curious how you are handling jacking in (or connecting). I'm using a user.clj file at the root directory to jack in, but it seems a bit hacky.

kpav20:05:10

I'd personally prefer to be able to jack in on any file in the repo, and have it use the polylith root dir instead of the brick's root

vemv20:05:48

Probably the idiomatic solution involves setting a .dir-locals.el with a fixed command Although I haven't used Poly for a while

escherize21:05:38

How are you liking the polylith-life, @U01GQNJFP6U?

kpav21:05:16

Liking it a lot so far!

👍 2
kpav21:05:03

Ooh yeah .dir-locals is probably the way to go thinking about it, I'll have to to find the cider command that defines the fn used to jack in

valtteri05:05:49

In a customer project we have a “root level” deps.edn with a :dev alias that adds extra-paths for all bases and components. Originally this was just a hack for Cursive users to make it work but maybe as a coincidence (?) it makes jack-in work “as expected”.

valtteri05:05:00

We’ve been using Polylith over a year there. I have mixed feelings. I like some things but others not so much.

anonimitoraf08:05:11

Which things do you not like so much @U6N4HSMFW?

valtteri09:05:41

I still don’t get the point of base wrt. components. I’ve read the docs several times and implemented several bases but I fail to see the value. poly test is crude and output is horrible. Recently it’s become possible to use kaocha as a test-runner which improves this. Interfaces introduce boilerplate.

👍 2
pavlosmelissinos15:05:19

@U6N4HSMFW if you have suggestions, questions or even just complaints the folks over at #polylith are very receptive to feedback and quite eager to help 🙂 (I haven't used polylith extensively but I share some of your concerns)

kpav15:05:04

I view the components as simple libraries, and bases are the actual "business" applications which leverage the components

kpav15:05:51

re: interfaces, I would say that most (if not all?) libraries have some sort of public methods / vars to use it, which would essentially be the "interface" ns

kpav15:05:35

I think its only really worth it if you are building multiple applications out of a set of shared components though, it definitely adds a bit of overhead that is probably not worth it for a lot of projects