clojure-emacs / cider-nrepl

A collection of nREPL middleware to enhance Clojure editors with common functionality like definition lookup, code completion, etc.
https://docs.cider.mx/cider-nrepl
677 stars 176 forks source link

Clojure 1.8 support broken with CI update #864

Closed bm3719 closed 5 months ago

bm3719 commented 5 months ago

Following the change in 891374249c7ddc0cc2943d758456de970ea56343 by @vemv, it's no longer possible to load cider-nrepl on any project using Clojure <1.9.

I understand wanting to sync the Circle CI tests to supported versions, and it'll currently display a warning accordingly. But, also completely preventing cider-nrepl from being loaded will mean we can no longer use it at all for any projects using 1.8.

Seems like having the logic in cider-nrepl.plugin still allow it to load (with warning) would be more permissive and not lock out as many old projects without incurring any downsides.

vemv commented 5 months ago

Hi @bm3719 ,

Per https://github.com/clojure-emacs/cider-nrepl/pull/840 :

1.8 compat, while it was intended to be, was broken for a possibly very long time.

We also intended to drop it intentionally anyway. So, it was unawarely broken, and we did want to drop its support anyway.

It's not worthwhile to support that version with Clojure 1.12 around the corner.

Is there a strong reason why you'd use Clojure 1.8?

We certainly do not require you to bump the Clojure version for production usage: it's easy enough to bump Clojure locally, in a :dev/:cider-nrepl Lein profile or t.deps alias.

Cheers - V

bm3719 commented 5 months ago

We have a lot of outdated versions of stack components on our production project, and unfortunately, the main Clojure version is just one of them. ☹️ However, I also thought that preserving max coverage on the ability to use cider-nrepl across projects not actively bumping their versions might help the community in general as well.

There's definitely some other paths to avoiding this issue, but we thought it was worth checking to see if not explicitly dropping 1.8 support in cider-nrepl was an option.

vemv commented 5 months ago

Happy that you agree that the issue can be avoided - we certainly don't enjoy inflicting any pain, but we also have to balance that out with maintaining our codebase in a healthy state.