cider icon indicating copy to clipboard operation
cider copied to clipboard

Add scittle to runtime versions

Open benjamin-asdf opened this issue 1 year ago • 5 comments

Replace this placeholder text with a summary of the changes in your PR. The more detailed you are, the better.


Before submitting the PR make sure the following things have been done (and denote this by checking the relevant checkboxes):

  • [X] The commits are consistent with our contribution guidelines
  • [ ] You've added tests (if possible) to cover your change(s)
  • [ ] All tests are passing (eldev test)
  • [ ] All code passes the linter (eldev lint) which is based on elisp-lint and includes
  • [X] You've updated the changelog (if adding/changing user-visible functionality)
  • [ ] You've updated the user manual (if adding/changing user-visible functionality)

benjamin-asdf avatar Dec 22 '23 12:12 benjamin-asdf

Scittle nrepl was saying a version but we don't take it into account for runtime classification.

benjamin-asdf avatar Dec 22 '23 12:12 benjamin-asdf

You could also expand the user manual to show that this is possible, its use case, sample setup etc.

...It would also help us verify this works as intended - I've never used scittle but would gladly QA this branch

vemv avatar Dec 22 '23 15:12 vemv

@benjamin-asdf ping :-)

bbatsov avatar Jan 16 '24 07:01 bbatsov

Hi, the write up is here. https://github.com/babashka/scittle/tree/main/doc/nrepl

The last section should not be neccessary because it is replaced by cljs discovery. The cljs discovery was broken for scittle and is fixed by adding this scittle version.

I am honestly not 100% happy about this. I thought that we had something where the client checks cljs capability by itself. But we removed this mainly because of the startup performance of doing a cljs eval or something?

The problem right now is that if somebody like Jack Rusher writes a new clojurescript repl, it won't work directly. And it does for calva, which is then pointed out usually :P

benjamin-asdf avatar Jan 19 '24 12:01 benjamin-asdf

But we removed this mainly because of the startup performance of doing a cljs eval or something?

Please check the git logs as I don't immediately recall what that thing was named, or why it was removed.

The problem right now is that if somebody like Jack Rusher writes a new clojurescript repl, it won't work directly.

Not sure of how things came to that point (if they really are). Per:

(defun cider-runtime ()
  "Return the runtime of the nREPl server."
  (cond
   ((cider--clojure-version) 'clojure)
   ((cider--babashka-version) 'babashka)
   ((cider--nbb-nrepl-version) 'nbb)
   ((cider--scittle-nrepl-version) 'scittle)
   (t 'generic)))

...the only cljs repls that need a special identification happen to come from the same author. There's a nice variety of cljs repls that don't need that.

vemv avatar Jan 22 '24 06:01 vemv

@benjamin-asdf Ping :-)

bbatsov avatar Feb 28 '24 12:02 bbatsov

@bbatsov Jo I fixed the remaining lint error (I hope)

benjamin-asdf avatar Feb 28 '24 16:02 benjamin-asdf

I think you'll need to rebase on top of master, as the changelog seems outdated on this branch. I also left a few small remarks.

bbatsov avatar Mar 05 '24 16:03 bbatsov

@bbatsov Cool, I fixed the remaining issues

benjamin-asdf avatar Mar 08 '24 10:03 benjamin-asdf

Thanks!

bbatsov avatar Mar 08 '24 13:03 bbatsov