GithubHelp home page GithubHelp logo

Multiple connections? about cider HOT 17 CLOSED

technomancy avatar technomancy commented on September 26, 2024
Multiple connections?

from cider.

Comments (17)

ska2342 avatar ska2342 commented on September 26, 2024

Sounds like a good idea to ask the user first, before closing an existing connection.

from cider.

technomancy avatar technomancy commented on September 26, 2024

Yeah, that's what clojure-jack-in currently does with swank. But nrepl.el could probably be smarter and support multiple connections. Just want to know whether that's a desired feature or not.

from cider.

ska2342 avatar ska2342 commented on September 26, 2024

Just speaking for myself of course, but I usually start a dedicated Emacs on a dedicated desktop for larger things. But then again from what I read on the net, other people seem to prefer one Emacs for everything. So maybe the conclusion is, that it's probably desired but not with very high prio right now. :)

from cider.

kingtim avatar kingtim commented on September 26, 2024

I think nrepl.el could absolutely support multiple connections. The only question in my mind is how much demand there is for it.
I'm not sure I would use that feature much myself, and I am more than happy to start up multiple instances of emacs if necessary.
Are you in favor of multiple or single connection, @technomancy ?

from cider.

technomancy avatar technomancy commented on September 26, 2024

In theory I believe nrepl.el should support multiple connections, but personally I'm not interested in using it; I never work on more than one project in a given Emacs instance. So I probably won't implement it.

The reason I'm asking is that I'd like to make restarting nicer. This is really easy if we can assume that there's only one connection. If we assume that we're going to be supporting multiple connections then each connection has to be associated with a project root, which makes it a bit trickier.

from cider.

kingtim avatar kingtim commented on September 26, 2024

Lets just go with a single connection for now.

from cider.

ska2342 avatar ska2342 commented on September 26, 2024

+1 for single connection

from cider.

purcell avatar purcell commented on September 26, 2024

I agree with @technomancy that nrepl.el should support multiple connections, even if adding that support isn't the highest priority in the short term. It ideally shouldn't be necessary to run multiple Emacs instances in order for things to work right when fiddling with a couple of projects.

Most state (request queue etc.) is already centralised in the connection buffer, so it seems to me that we could get a long way by replacing uses of "*nrepl-connection*" with an nrepl-current-connection function which knows how to locate the connection buffer for any given source (or repl) buffer. Raising an error from that function when no corresponding session is found would likely be a neat way to degrade the clojure-nrepl functionality when working in unconnected projects.

from cider.

CmdrDats avatar CmdrDats commented on September 26, 2024

+1 for multiple connections - I love the idea of associating buffers/projects to connections. I'd use it constantly.

I'm inclined to try pitch in and help on this if that's the only reason you'd rather not go with multiple connections?

from cider.

kingtim avatar kingtim commented on September 26, 2024

Thanks for the feedback everyone. Seems like there is plenty of interest so we should do it.
And I think you are correct @purcell, that seems like a good way to approach it.
@CmdrDats if you feel like taking a swing at it I'd say go for it. For the record, I always thought we could and should support it, just wasn't a high enough priority for me.

from cider.

technomancy avatar technomancy commented on September 26, 2024

The other nice thing about this is that it would give slime users more incentive to switch to nrepl since this is one of the things slime does a really bad job at. =)

from cider.

bbatsov avatar bbatsov commented on September 26, 2024

@hugoduncan addressed this in #238. I guess @kingtim should close this ticket and the other duplicate once #238 gets merged.

from cider.

bbatsov avatar bbatsov commented on September 26, 2024

Since #238 is now merged I guess we can close this one. @technomancy @kingtim

from cider.

stathissideris avatar stathissideris commented on September 26, 2024

+1 for multiple connections -- it's the main reason I'm still using slime (@technomancy I think slime does a decent job with multiple connections). My main use case is to be able to hack on multiple projects by keeping the namespace of each project clean, and also to be able to hack things locally while at the same time debugging a remote server over its REPL.

from cider.

bbatsov avatar bbatsov commented on September 26, 2024

@stathissideris This has already been implemented :-)

from cider.

stathissideris avatar stathissideris commented on September 26, 2024

@bbatsov oops, sorry, I assumed that multiple connections were not available because the issue is still marked as open.

from cider.

bbatsov avatar bbatsov commented on September 26, 2024

No worries. I guess @kingtim just forgot to close it. I had several duplicates lying around.

Cheers,
Bozhidar

On Wednesday, April 3, 2013 at 12:29 PM, Stathis Sideris wrote:

@bbatsov (https://github.com/bbatsov) oops, sorry, I assumed that multiple connections were not available because the issue is still marked as open.


Reply to this email directly or view it on GitHub (#34 (comment)).

from cider.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.