# Questions & Help

**URL:** https://clojureverse.org/c/questions-help/29.md

[Latest](https://clojureverse.org/latest.md) · [Categories](https://clojureverse.org/categories.md) · [Tags](https://clojureverse.org/tags.md)

---

## [About the Questions & Help category](https://clojureverse.org/t/about-the-questions-help-category/641)

<div class="topic-metadata">

**Author:** [@plexus](https://clojureverse.org/u/plexus)\
**Replies:** 0\
**Last updated:** [November 5, 2017, 4:12pm UTC](https://clojureverse.org/t/about-the-questions-help-category/641 "2017-11-05T16:12:22Z")

</div>

Post questions or cries for help in one of the subcategories. When someone answers your question, make sure to flag the reply as such with the little checkmark button. That way the post will show up in the listings as “r…

---

## [Migration to Jetty 12 ring adapter ( info.sunng/ring-jetty9-adapter )](https://clojureverse.org/t/migration-to-jetty-12-ring-adapter-info-sunng-ring-jetty9-adapter/14821)

<div class="topic-metadata">

**Author:** [@maris-orbidans-otm](https://clojureverse.org/u/maris-orbidans-otm)\
**Replies:** 4\
**Last updated:** [January 12, 2026, 3:22pm UTC](https://clojureverse.org/t/migration-to-jetty-12-ring-adapter-info-sunng-ring-jetty9-adapter/14821 "2026-01-12T15:22:53Z")

</div>

I migrated a web app backend to Jetty 12 and I changed ring adapter to info.sunng/ring-jetty9-adapter :ssl-client-cert now returns an array of certificates. It used to be single certificate. :man\_shrugging: Do you kno…

---

## [Non-standard maven repo pain with deps (dcm4che)](https://clojureverse.org/t/non-standard-maven-repo-pain-with-deps-dcm4che/14795)

<div class="topic-metadata">

**Author:** [@jdf](https://clojureverse.org/u/jdf)\
**Replies:** 5\
**Last updated:** [January 3, 2026, 3:03am UTC](https://clojureverse.org/t/non-standard-maven-repo-pain-with-deps-dcm4che/14795 "2026-01-03T03:03:03Z")

</div>

Hi everyone, I’m trying to use the DICOM library dcm4che from Clojure and am getting stuck at the first step! With the following deps.edn (macOS 15.7.2 on intel, clojure 1.12.3.1577 via brew): {:mvn/repos {"dcm4che" {…

---

## [Can cider copypaste the selected region into the repl buffer?](https://clojureverse.org/t/can-cider-copypaste-the-selected-region-into-the-repl-buffer/14774)

<div class="topic-metadata">

**Author:** [@Alejandro](https://clojureverse.org/u/Alejandro)\
**Replies:** 1\
**Last updated:** [November 15, 2025, 8:04am UTC](https://clojureverse.org/t/can-cider-copypaste-the-selected-region-into-the-repl-buffer/14774 "2025-11-15T08:04:52Z")

</div>

I’d like to have a history of all the interaction with repl. Would be great if cider copied the selected region to the repl buffer along with the result of evaluation.

---

## [Knocking over Scittle with audio recordings](https://clojureverse.org/t/knocking-over-scittle-with-audio-recordings/14708)

<div class="topic-metadata">

**Author:** [@simon-brooke](https://clojureverse.org/u/simon-brooke)\
**Replies:** 6\
**Last updated:** [September 29, 2025, 4:43pm UTC](https://clojureverse.org/t/knocking-over-scittle-with-audio-recordings/14708 "2025-09-29T16:43:19Z")

</div>

Hi all, I’ve been writing Clojure as my main language since 2013, so I’m hardly a newbie. But I’m just diving into Michiel Borkent’s Scittle (which is great fun by the way), and I’m hitting problems with interoperation …

---

## [Best Practice for Separating Slow Tests in Kaocha (e.g., Integration Tests)](https://clojureverse.org/t/best-practice-for-separating-slow-tests-in-kaocha-e-g-integration-tests/14731)

<div class="topic-metadata">

**Author:** [@wierob](https://clojureverse.org/u/wierob)\
**Replies:** 4\
**Last updated:** [September 16, 2025, 9:26am UTC](https://clojureverse.org/t/best-practice-for-separating-slow-tests-in-kaocha-e-g-integration-tests/14731 "2025-09-16T09:26:14Z")

</div>

I’m trying to figure out the best way to separate slower tests (such as integration tests) in a Kaocha setup. I’ve added a metadata tag like ^:slow to the appropriate tests and updated my test.edn to skip them by defaul…

---

## [Error using a native JS component in CLJS](https://clojureverse.org/t/error-using-a-native-js-component-in-cljs/14700)

<div class="topic-metadata">

**Author:** [@iamnotahuman](https://clojureverse.org/u/iamnotahuman)\
**Replies:** 8\
**Last updated:** [August 27, 2025, 6:23pm UTC](https://clojureverse.org/t/error-using-a-native-js-component-in-cljs/14700 "2025-08-27T18:23:52Z")

</div>

Hello everyone! I’m trying and failing when using the nivo ResponsiveBar component. The nivo Bar component works. So I’m discounting my basic library import etc. as possible problems. For reference, the component defini…

---

## [String operations without losing line numbers](https://clojureverse.org/t/string-operations-without-losing-line-numbers/11202)

<div class="topic-metadata">

**Author:** [@habruening](https://clojureverse.org/u/habruening)\
**Replies:** 2\
**Last updated:** [February 8, 2025, 9:49pm UTC](https://clojureverse.org/t/string-operations-without-losing-line-numbers/11202 "2025-02-08T21:49:46Z")

</div>

Since long I have one problem when writing parsers. If you create a substring, you loose the track to the original string. But it is often required to know where in a file you are. For example if you want to produce err…

---

## [Protocols: state, and default implementations](https://clojureverse.org/t/protocols-state-and-default-implementations/11512)

<div class="topic-metadata">

**Author:** [@alex314159](https://clojureverse.org/u/alex314159)\
**Replies:** 4\
**Last updated:** [July 27, 2025, 9:13pm UTC](https://clojureverse.org/t/protocols-state-and-default-implementations/11512 "2025-07-27T21:13:46Z")

</div>

Hello there. I find myself needing some state management, which I currently do with a global atom, but it feels messy. I was thinking about putting state inside a record, OO style. Is this an anti-pattern? What could go …

---

## [How Can I Reliably Track My Current Location Using a Web Tool in Clojure Without Compromising Performance or User Experience?](https://clojureverse.org/t/how-can-i-reliably-track-my-current-location-using-a-web-tool-in-clojure-without-compromising-performance-or-user-experience/11495)

<div class="topic-metadata">

**Author:** [@Jelicamwangi](https://clojureverse.org/u/Jelicamwangi)\
**Replies:** 1\
**Last updated:** [July 19, 2025, 8:45pm UTC](https://clojureverse.org/t/how-can-i-reliably-track-my-current-location-using-a-web-tool-in-clojure-without-compromising-performance-or-user-experience/11495 "2025-07-19T20:45:44Z")

</div>

Lately, I’ve been exploring ways to detect and use my current geographical location directly within a web environment, and this got me thinking deeply about the best approach to reliably track the “where am I” status in …

---

## [In Helix, React: an example of using the use-ref hook with a callback?](https://clojureverse.org/t/in-helix-react-an-example-of-using-the-use-ref-hook-with-a-callback/11478)

<div class="topic-metadata">

**Author:** [@rmschindler](https://clojureverse.org/u/rmschindler)\
**Replies:** 1\
**Last updated:** [July 11, 2025, 6:09am UTC](https://clojureverse.org/t/in-helix-react-an-example-of-using-the-use-ref-hook-with-a-callback/11478 "2025-07-11T06:09:53Z")

</div>

hi, perhaps this is something new with React 19, but I see that a “ref” can be a callback function . (see “How to manage a list of refs using a ref callback” in the React docs) can anyone point me to an example of this…

---

## [How to disable the ability to launch a socket server?](https://clojureverse.org/t/how-to-disable-the-ability-to-launch-a-socket-server/11427)

<div class="topic-metadata">

**Author:** [@purple.ink](https://clojureverse.org/u/purple.ink)\
**Replies:** 2\
**Last updated:** [May 25, 2025, 3:32pm UTC](https://clojureverse.org/t/how-to-disable-the-ability-to-launch-a-socket-server/11427 "2025-05-25T15:32:04Z")

</div>

https://clojure.org/reference/repl\_and\_main#\_launching\_a\_socket\_server Hello, I’ve been working on a game using Clojure, and now I’d like to share it with some players. However, I’m not comfortable with shipping it wit…

---

## [How can we directly call \`(repo/get-cust-by-id id)\`, instead of \`((:get-cust-by-id sys-map) id)\` when using component libraries?](https://clojureverse.org/t/how-can-we-directly-call-repo-get-cust-by-id-id-instead-of-get-cust-by-id-sys-map-id-when-using-component-libraries/11358)

<div class="topic-metadata">

**Author:** [@Pyi\_Soe](https://clojureverse.org/u/Pyi_Soe)\
**Replies:** 1\
**Last updated:** [April 29, 2025, 6:36am UTC](https://clojureverse.org/t/how-can-we-directly-call-repo-get-cust-by-id-id-instead-of-get-cust-by-id-sys-map-id-when-using-component-libraries/11358 "2025-04-29T06:36:26Z")

</div>

With component libraries such as Component/Integrant, when a function has a dependency on part of the system state, we usually inject the dependency and put it in a map. Assuming repo is a component with CRUD functions …

---

## [Hyprland & Clojure](https://clojureverse.org/t/hyprland-clojure/11316)

<div class="topic-metadata">

**Author:** [@ilemming](https://clojureverse.org/u/ilemming)\
**Replies:** 3\
**Last updated:** [April 10, 2025, 4:58pm UTC](https://clojureverse.org/t/hyprland-clojure/11316 "2025-04-10T16:58:15Z")

</div>

I’m shopping for the next WM on my Linux box and I’m currently evaluating Hyprland. This is my first Wayland compositor; before, I’ve used only X11 WMs — exwm, stump, awesome. And every one of them has some limitations: …

---

## [Lein ancient for depn.edn](https://clojureverse.org/t/lein-ancient-for-depn-edn/11249)

<div class="topic-metadata">

**Author:** [@Webdev\_Tory](https://clojureverse.org/u/Webdev_Tory)\
**Replies:** 2\
**Last updated:** [March 12, 2025, 9:28pm UTC](https://clojureverse.org/t/lein-ancient-for-depn-edn/11249 "2025-03-12T21:28:31Z")

</div>

I find lein ancient (GitHub - xsc/lein-ancient: Check your Projects for outdated Dependencies | Moved to Codeberg ) to be very useful to check all my dependency versions, especially on old projects. I just dusted off a p…

---

## [Copy File Line by Line Using lazy-seq](https://clojureverse.org/t/copy-file-line-by-line-using-lazy-seq/11166)

<div class="topic-metadata">

**Author:** [@patrickbucher](https://clojureverse.org/u/patrickbucher)\
**Replies:** 2\
**Last updated:** [January 25, 2025, 5:14pm UTC](https://clojureverse.org/t/copy-file-line-by-line-using-lazy-seq/11166 "2025-01-25T17:14:58Z")

</div>

I’d like to copy a file line by line using a lazy-seq for buffering. The end goal is to filter/transform the lines, so while slurp/spit certainly would be easier, it doesn’t solve my bigger issue. Here’s the code: (def…

---

## [Couldn't satisfy such-that predicate after 100 tries {} when trying to generate samples from spec definition](https://clojureverse.org/t/couldnt-satisfy-such-that-predicate-after-100-tries-when-trying-to-generate-samples-from-spec-definition/11064)

<div class="topic-metadata">

**Author:** [@metatron](https://clojureverse.org/u/metatron)\
**Replies:** 2\
**Last updated:** [December 16, 2024, 4:52am UTC](https://clojureverse.org/t/couldnt-satisfy-such-that-predicate-after-100-tries-when-trying-to-generate-samples-from-spec-definition/11064 "2024-12-16T04:52:39Z")

</div>

Given the following spec definitions (ns spec-playground.spec.standard (:require \[clojure.spec.alpha :as s\])) (defn- state-length \[str\] (= 2 (count str))) (s/def ::field-one string?) (s/def ::field-two string?) (s/…

---

## [Separating effects from business logic](https://clojureverse.org/t/separating-effects-from-business-logic/10961)

<div class="topic-metadata">

**Author:** [@jacob](https://clojureverse.org/u/jacob)\
**Replies:** 18\
**Last updated:** [December 7, 2024, 8:59pm UTC](https://clojureverse.org/t/separating-effects-from-business-logic/10961 "2024-12-07T20:59:46Z")

</div>

Over the weekend I started experimenting with structuring my ring handlers as pure functions by separating the co-/side-effects out in a style similar to what re-frame does. I.e. instead of passing in mocks of some sort …

---

## [How to close the "ESTABLISHED" connection by aleph?](https://clojureverse.org/t/how-to-close-the-established-connection-by-aleph/11052)

<div class="topic-metadata">

**Author:** [@ninesolaries](https://clojureverse.org/u/ninesolaries)\
**Replies:** 1\
**Last updated:** [December 6, 2024, 1:56pm UTC](https://clojureverse.org/t/how-to-close-the-established-connection-by-aleph/11052 "2024-12-06T13:56:51Z")

</div>

I followed the example of tcp, but close the connection by sever when response is successful. (defn short-connection-echo-handler \[f\] (fn \[s info\] (println "show sink:" s) ;; take a message, and define a de…

---

## [Help needed with a potential race condition](https://clojureverse.org/t/help-needed-with-a-potential-race-condition/11042)

<div class="topic-metadata">

**Author:** [@alex314159](https://clojureverse.org/u/alex314159)\
**Replies:** 6\
**Last updated:** [November 28, 2024, 1:35pm UTC](https://clojureverse.org/t/help-needed-with-a-potential-race-condition/11042 "2024-11-28T13:35:06Z")

</div>

Hello there. I have a trading app connected to Interactive Brokers, and some weird race behaviour that I would welcome some opinion on. I’ve been able to reproduce the error through a stylised example below. I would welc…

---

## [How should I rewrite a js script in ClojureScript?](https://clojureverse.org/t/how-should-i-rewrite-a-js-script-in-clojurescript/11041)

<div class="topic-metadata">

**Author:** [@Webdev\_Tory](https://clojureverse.org/u/Webdev_Tory)\
**Replies:** 2\
**Last updated:** [November 24, 2024, 9:14am UTC](https://clojureverse.org/t/how-should-i-rewrite-a-js-script-in-clojurescript/11041 "2024-11-24T09:14:16Z")

</div>

I am trying to rewrite a js script in Clojurescript. The JS script is GitHub - jeb5/YouTube-Subscriptions-RSS: Generate an OPML file of RSS feeds for your YouTube subscriptions. Ideally it can be pasted into the browse…

---

## [State of Clojure on Android](https://clojureverse.org/t/state-of-clojure-on-android/10989)

<div class="topic-metadata">

**Author:** [@publicimageltd](https://clojureverse.org/u/publicimageltd)\
**Replies:** 6\
**Last updated:** [October 29, 2024, 8:44pm UTC](https://clojureverse.org/t/state-of-clojure-on-android/10989 "2024-10-29T20:44:27Z")

</div>

I’ve seen that Neko is archived, and there is generally hardly any information on using native Clojure on Android. Rather, everyone seems to move to Clojurescript with re-agent or the likes. This looks strange to me, sin…

---

## [Is it efficient to nest/compose eductions?](https://clojureverse.org/t/is-it-efficient-to-nest-compose-eductions/10987)

<div class="topic-metadata">

**Author:** [@ryantate](https://clojureverse.org/u/ryantate)\
**Replies:** 2\
**Last updated:** [October 27, 2024, 7:29pm UTC](https://clojureverse.org/t/is-it-efficient-to-nest-compose-eductions/10987 "2024-10-27T19:29:17Z")

</div>

Very short version of my question, I am wondering if something like this is going to be efficient, without intermediate collections created by the eductions and with execution of the eduction transducers deferred until …

---

## [Windows install options for clojure-tools - which way?](https://clojureverse.org/t/windows-install-options-for-clojure-tools-which-way/10947)

<div class="topic-metadata">

**Author:** [@gurban](https://clojureverse.org/u/gurban)\
**Replies:** 3\
**Last updated:** [October 22, 2024, 5:09am UTC](https://clojureverse.org/t/windows-install-options-for-clojure-tools-which-way/10947 "2024-10-22T05:09:37Z")

</div>

Hello Community, I’m quit new to Clojure and curious about the question, what would be the ‘right’ or preferred way to install clojure-tools (aka clojure and clj commands) on Windows? Kindly awaiting pointers, suggesti…

---

## [Reducers: sorting while folding](https://clojureverse.org/t/reducers-sorting-while-folding/10951)

<div class="topic-metadata">

**Author:** [@Luca\_Bandelli](https://clojureverse.org/u/Luca_Bandelli)\
**Replies:** 8\
**Last updated:** [October 2, 2024, 9:33am UTC](https://clojureverse.org/t/reducers-sorting-while-folding/10951 "2024-10-02T09:33:54Z")

</div>

Dears, I have the following scenario: i have a function FuzzySearch/weightedRatio that given 2 string computes a similarity score. I have my search input and about 3 million entries in all-options. I the output shou…

---

## [Create code-like data structures dynamically](https://clojureverse.org/t/create-code-like-data-structures-dynamically/10903)

<div class="topic-metadata">

**Author:** [@habruening](https://clojureverse.org/u/habruening)\
**Replies:** 8\
**Last updated:** [September 30, 2024, 7:31pm UTC](https://clojureverse.org/t/create-code-like-data-structures-dynamically/10903 "2024-09-30T19:31:27Z")

</div>

Is there a comfortable way to implement a mechanism that takes a list, searches for the keyword clj and evaluate what is inside the clj? Here an example: '(a (clj (+ 1 1)) b) =\> '(a 2 b) My first try was a function ev…

---

## [Set file and line-number information in stack trace entries](https://clojureverse.org/t/set-file-and-line-number-information-in-stack-trace-entries/10949)

<div class="topic-metadata">

**Author:** [@moon](https://clojureverse.org/u/moon)\
**Replies:** 0\
**Last updated:** [September 26, 2024, 5:46am UTC](https://clojureverse.org/t/set-file-and-line-number-information-in-stack-trace-entries/10949 "2024-09-26T05:46:01Z")

</div>

Clojure has some beautiful stack trace output, to be sure, but there is a missing piece I’m wondering if someone can help with. I am (very very slowly) working on a templating system called Ash Ra Template; compiler erro…

---

## [Error when trying to start a REPL in emacs](https://clojureverse.org/t/error-when-trying-to-start-a-repl-in-emacs/10912)

<div class="topic-metadata">

**Author:** [@FireLuc33](https://clojureverse.org/u/FireLuc33)\
**Replies:** 7\
**Last updated:** [September 9, 2024, 9:14am UTC](https://clojureverse.org/t/error-when-trying-to-start-a-repl-in-emacs/10912 "2024-09-09T09:14:00Z")

</div>

I was following How to Use Emacs, an Excellent Clojure Editor | Clojure for the Brave and True , but when the book said to open a clojure REPL in emacs using cider-jacked-in, I got this error: internal-macroexpand-for-lo…

---

## [Clojure.core.set throws ClassCastException](https://clojureverse.org/t/clojure-core-set-throws-classcastexception/10866)

<div class="topic-metadata">

**Author:** [@Marutks](https://clojureverse.org/u/Marutks)\
**Replies:** 1\
**Last updated:** [August 2, 2024, 5:51am UTC](https://clojureverse.org/t/clojure-core-set-throws-classcastexception/10866 "2024-08-02T05:51:53Z")

</div>

How can (set) throw a ClassCastException? ClassCastException class clojure.lang.PersistentHashMap cannot be cast to class java.util.Map$Entry (clojure.lang.PersistentHashMap is in unnamed module of loader 'app'; java.ut…

---

## [How to Optimize Performance in a Clojure Web Application](https://clojureverse.org/t/how-to-optimize-performance-in-a-clojure-web-application/10853)

<div class="topic-metadata">

**Author:** [@miaco](https://clojureverse.org/u/miaco)\
**Replies:** 3\
**Last updated:** [August 1, 2024, 12:40pm UTC](https://clojureverse.org/t/how-to-optimize-performance-in-a-clojure-web-application/10853 "2024-08-01T12:40:08Z")

</div>

Hii guys! :smiling\_face\_with\_three\_hearts: I’m trying to maximize the performance of a web application that I’m working on with Clojure. I’ve done some reading and used a couple standard methods, but I want to be certai…

[Next page](https://clojureverse.org/c/questions-help/29.md?page=1)
