This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # announcements (37)
- # babashka (28)
- # beginners (104)
- # calva (28)
- # cider (32)
- # clj-kondo (35)
- # cljs-dev (4)
- # cljsrn (3)
- # clojure (35)
- # clojure-conj (4)
- # clojure-dev (57)
- # clojure-europe (4)
- # clojure-france (6)
- # clojure-gamedev (1)
- # clojure-germany (1)
- # clojure-hamburg (2)
- # clojure-italy (7)
- # clojure-nl (4)
- # clojure-spec (9)
- # clojure-uk (11)
- # clojuredesign-podcast (2)
- # clojurescript (36)
- # clojurex (48)
- # core-async (6)
- # cursive (12)
- # data-science (1)
- # datomic (21)
- # defnpodcast (7)
- # duct (1)
- # events (1)
- # fulcro (56)
- # graalvm (30)
- # graphql (5)
- # jobs (1)
- # joker (21)
- # keechma (1)
- # leiningen (4)
- # off-topic (109)
- # parinfer (20)
- # pathom (27)
- # re-frame (4)
- # shadow-cljs (80)
- # spacemacs (18)
- # sql (32)
- # testing (2)
- # tools-deps (32)
- # vim (20)
Have been running clj-kondo via Emacs, I did allow the ruby interpreter that starts Emacs on OSX some privileges, but don't remember doing anything similar to clj-kondo
Thanks for help yesterday folks! In my minimal test bed, I did not get
clojure.test/run-tests working with a CLJ-1472 patched version of clojure 1.10.1 (maybe my process was flawed, dunno) but I did have success with @taylor's clojurl lock fix!
@lee The problem with the patch is that clojure and/or spec are AOT-d, this makes it more complicated than just running with a patched Clojure version. I don't remember the exact process but Alex explained it to me once
so I think you have to first recompile spec with the fi... hmm, I really don't remember how it went, it's very confusing
it might go like this: spec is AOTd so it has the reference to the old locking macro expansion baked in?
Oh... maybe some secret sauce then? I simply applied the candidate patch to a clone of clojure repo and ran an mvn install. That might not be the right way to do it.
for my purposes, clojurl lockfix might be just fine. But I guess I'm not really helping test CLJ-1472 if I take that route.
I think Ghadi was working on it at some point, but gave up. Not sure what the status is now
clojurl makes locking into a special form implemented in Java, that seems to me a robust solution
From the JIRA issue it looks like Ghadi reworked a solution in June of this year. But yeah... don't know how much of a work in progress this might still be.
I don't think he's working on it anymore, and what improvements it has on the patch that was there before. Maybe @alexmiller knows more.
Not being worked on by anyone atm
It needs clean up with a clear list of options and pros/cons/perf for each
Thanks for the info @alexmiller, much appreciated.
I tried CLJ-1472-reentrant-finally2.patch but this program didn't compile:
Now I'm trying clj-1472-3.patch but it seems it doesn't apply:
(ns spec-test.core (:gen-class) (:require [clojure.spec.alpha :as s])) (s/def ::g int?) (defn -main [& _args] (println (s/valid? ::g 1)))
$ git apply clj-1472-3.patch error: patch failed: src/jvm/clojure/lang/Util.java:242 error: src/jvm/clojure/lang/Util.java: patch does not apply
@lee some notes I made when trying some patches: https://gist.github.com/borkdude/dd0857cf1958b25496fddbdbf359ca59
@borkdude, just verified that my result (no surprise) with
clj-1472-3.patch matches yours.
@eraserhd, you mentioned you were having some success with one of the clj-1472 patches, would you happen to have any hints?
@lee I made some more notes. In the last step I'm trying tools.deps instead of lein, but it seems native-image can't find the class or main method
@borkdude I am doing my own testing with tools deps only but have only tried testing from an uberjar so far.
I'd definitely be interested in having Clojurists Together try and help fund someone to work on this. Who would be best placed to work on it? Ghadi? @lee?
@danielcompton thanks for thinking of me, but I am trying to focus on rewrite-cljc for now. @gerred did offer his assistance above.