clj-commons/claypoole

Clojars release 1.1.4 might be broken - completable-future is missing in my jar

ieugen opened this issue · 17 comments

Hello,

I added this library to my project to test it out.
I'm using com.climate/claypoole {:mvn/version "1.1.4"} with deps.edn.

I copied the examples and I got an error when I tried to run the piece of code with:

(def cfut (cp/completable-future pool (my-fn ["b" :a :d])))

I got this in Calva:

; Syntax error compiling at (src/ro/ieugen/training/parallel/claypool.clj:23:11).
; No such var: cp/completable-future
; Evaluation of file claypool.clj failed: class clojure.lang.Compiler$CompilerException

Checked the jar file locally and found out the macro is missing.
File looks kind of old (July 2016) so maybe the build might be broken?

Perhaps some other fixes are also missing from latest release.

Captură de ecran de la 2022-01-19 00-42-18

I saw that 1.1.4 is quite old and completable-future is quite new code.
Would be nice to have a new release that supports them.

Yeah, the issue is basically that I no longer have rights to that repo in Clojars after I left the company, so I tried to deploy it, and I failed. I probably need to fork the repo and set up a new Claypoole package (maybe just claypoole), but I haven't done so yet; I was unsure if anyone needed it. Sounds like you do.

Yes we use it.
I think others use it too.
It pops up on Clojurians Slack channel.
Too bad it needs compiled java classes. otherwise it could have been migrated to deps.edn and use git branch dependency .

If the java code does not change that often, it could be published as a separate library from the Clojure parts and use deps.edn (with git dependencies) for the clojure parts.

@leon-barrett Do you have plans to fork the project and do that part?
IF you don't have time to maintain it maybe we can try to see if we can push it towards clj-commons or some other org where more people can get involved.
https://github.com/clj-commons

I am not affiliated with them but I would contribute some patches.

If the java code does not change that often, it could be published as a separate library from the Clojure parts and use deps.edn (with git dependencies) for the clojure parts.

deps.edn also supports preparation of a lib with Java sources in it now:

https://clojure.org/reference/deps_and_cli#prep

Yeah, I wrote Clojure professionally from 2012-2017, but I haven't touched it in a while now. I'd love to hand this project off. clj-commons sounds like a great idea. I'll see about getting it transferred there.

(I contacted people at Climate to see about getting updated versions pushed, but I wouldn't hold my breath.)

Okay, I filed issue clj-commons/meta#66 edit: but closed it in favor of clj-commons/meta#65

If they are not interested in maintaining it (and it seems this is the case) maybe they would like to transfer it so that other people can maintain it.

Thanks for being open to the idea and active in contacting your former employees.
Let's hope they agree.

Just let me know where and how to transfer and I'll move it.

@jmelching Thanks! I think you'll transfer it to https://github.com/slipset , and then then they can transfer it on to the organization https://github.com/clj-commons/ . Discussion at clj-commons/meta#65 (comment)

When slipset is ready, you can transfer it via instructions available at https://docs.github.com/en/repositories/creating-and-managing-repositories/transferring-a-repository .

Thanks again!

@jmelching I'll invite you to clj-commons, and you'll be able to do the transfer.

@jmelching You should have gotten an invite. To transfer the repo, you need to the repo's "settings" tab and all the way down at the bottom, in the "Danger zone" there is a button "Transfer". Click that, and follow instructions.

Excellent! Thanks a lot

I think this should be closed after the new release is done that includes the changes in the examples (completable-future).
Let me know if you think otherwise.

Should be fixed in release 1.2.2 on clojars (pending announcement) and available o latest branch.