announcements

julienvincent 2026-02-25T11:02:44.174939Z

https://github.com/kepler16/kmono: A monorepo/workspace tool for clojure tools.deps projects 4.10.0..4.11.0 Been a while since I posted the original announcement, and there have been a few improvements since then. Mostly focused around performance and correctness. Here are the highlights: • Improve overall performance with concurrent IO This reworks some of the internals to perform batched concurrent IO operations instead. On a largish internal project this resulted in a ~1s+ performance improvement. • Improve performance of glob path matcher Primarily this implementation allows combining multiple glob patterns to avoid traversing the file tree multiple times. • Traverse full graph when searching for cycles This fixes a bug where some edges would be skipped for certain graph configurations resulting in missed cycles. • Replace shell calls to git with in-process JGit This change results in very significant performance improvements when performing graph queries that involve augmenting the graph from information in git. In some repositories I have seen improvements of several hundred ms. • Use JGit to parse gitignore traversal skipping This change alone improves performance of all graph queries by several hundred milliseconds, depending on the size of the repo. • Fix project root discovery only working from $HOME A bug in the project root discovery logic resulted in workspaces located outside of the shell $HOME failing to be loaded. • Allow resolving git repo from subdir If the kmono workspace is a subdirectory of a git repo then kmono would fail to properly interact with the git repository. I also created a channel over at #kmono for anyone trying it out who have questions.

3
🎉 3
seancorfield 2026-02-25T14:42:58.830789Z

tools.deps used JGit at one point (well, tools.gitlibs) but switched to shell calls in 2021 -- https://clojure.atlassian.net/browse/TDEPS-91 -- do you know of or anticipate any similar issues with your switch from git shell calls to JGit?

julienvincent 2026-02-25T17:11:06.052419Z

For kmono's use-case I couldn't think of any reasons not to do it. And I wanted to bundle the dependency to take advantage of the .gitignore parsing support it would give. Looks like most of the issues reported in that ticket are related to interacting with a remote, and possibly creating new signed commits. These are not currently use-cases for kmono which only uses git to read out information. I was wary of unknown bugs at first, but over time in own extensive use of kmono in a range of environments I haven't run yet run into any problems relating to the switch - so happy with the result so far.

👍🏻 1
2026-02-25T13:35:09.161059Z

CUDA on the JVM in a dynamic and interactive package: new release of ClojureCUDA, 0.27.0, is out. Comes with books and tutorials https://clojurecuda.uncomplicate.org/ https://aiprobook.com/

11
🎉 6
neumann 2026-03-04T07:56:32.194229Z

I don't see a tag for 0.27.0 but I do see them for prior releases: https://github.com/uncomplicate/clojurecuda/tags

2026-03-04T11:24:55.109869Z

@neumann Thanks. Fixed!

1