polylith

tengstrand 2024-12-18T13:52:42.539459Z

Many are probably wondering why there has been so little activity here in recent months. First, I gave myself some time off during the summer. Then I started a new job as a Clojure developer, with the role of Principal Software Engineer, where I was given a very demanding task to rewrite the heart of their system. It has taken a lot of time and energy, which has made me take it easy with Polylith. Now a lot is in place in the new solution and I don't feel the same pressure anymore. The next big thing in the pipeline is to have the poly tool support ClojureScript. I'm a typical backend developer, and would therefore like to bring one or more people into the project as we develop this. I'm looking for someone who knows frontend development in cljs + shadow-cljs and who is willing to work with the Polylith codebase long-term. It's good if you also master clj development, as the tool is written in it. I think it can be exciting for everyone involved, including me! I see this as an opportunity to bring new developers into the project. I will continue to write code, solve issues and be the main responsible, and ensure that we have a thriving project! If you are interested, send me a DM!

👍 4
👍🏼 1
5
3
❤️ 13
6
🙌 1
seancorfield 2024-12-18T16:04:30.192889Z

"Welcome back!" 🙂 I submitted some PRs a while back. LMK if you have Qs about those. Three are very minor and straightforward. The fourth is somewhat speculative and needs more work but I wanted to discuss the approach first (we're relying on it at work so...).

tengstrand 2024-12-18T17:19:59.360389Z

Thanks, will have a look!

tengstrand 2024-12-18T17:38:45.065839Z

Sorry, but I merged your PR's in the wrong order, so now I have conflicts in https://github.com/polyfy/polylith/pull/519 one @seancorfield. Is that something that is easy to fix for you?

seancorfield 2024-12-18T17:39:50.569459Z

I was expecting you'd want to talk at some length about the Selmer templates one 🙂 There were no tests or docs in that one...

seancorfield 2024-12-18T17:40:59.402819Z

The change in 519 is minimal: wherever there is .calva/output-window/output.calva-repl, just add .calva/repl.calva-repl

tengstrand 2024-12-18T17:41:01.858079Z

The tests were green, and then I had the idea to test more.

tengstrand 2024-12-18T17:41:34.553819Z

...before building a snapshot release.

seancorfield 2024-12-18T17:41:49.064059Z

We're using the Selmer template stuff at work already. We have per-workspace templates with copyright notices and different test setups...

tengstrand 2024-12-18T17:43:12.682879Z

I will have another look on this one, now when it's merged! 😀

seancorfield 2024-12-18T17:44:24.773809Z

I can do a new PR to replace 519 if you'd prefer I do the work? Might not happen today tho'...

seancorfield 2024-12-18T17:45:14.232579Z

You'll probably find my other PRs conflict too since at least one other was modifying the generated files (which have now moved from code to templates).

tengstrand 2024-12-18T17:49:11.687939Z

I resolved the conflict. The tests are running now...

seancorfield 2024-12-18T17:53:28.253589Z

Ah, the 1.12 PR relies on clojure-ver so it won't conflict (I just updating it from master).

tengstrand 2024-12-18T17:55:44.287779Z

Yes

seancorfield 2024-12-18T18:08:47.887299Z

Thank you for merging all four of those! LMK if/when you want to chat about the Selmer template stuff.

seancorfield 2024-12-18T18:10:39.615649Z

Here's an example of what we have at work:

seancorfield 2024-12-18T18:11:30.544379Z

{:deps {org.clojure/clojure {:mvn/version "1.12.0"}

        com.mysql/mysql-connector-j {:mvn/version "9.1.0"}

        ;; use log4j 2.x:
        org.apache.logging.log4j/log4j-api {:mvn/version "2.24.3"}
        ;; bridge into log4j:
        org.apache.logging.log4j/log4j-1.2-api {:mvn/version "2.24.3"}
        org.apache.logging.log4j/log4j-jcl {:mvn/version "2.24.3"}
        org.apache.logging.log4j/log4j-jul {:mvn/version "2.24.3"}
        org.apache.logging.log4j/log4j-slf4j-impl {:mvn/version "2.24.3"}
        org.apache.logging.log4j/log4j-slf4j2-impl {:mvn/version "2.24.3"}}

 :aliases {:test {:extra-paths []
                  :extra-deps  {io.github.noahtheduke/lazytest {:mvn/version "1.5.0"}}}}}
That's our template projects/deps.edn file.