Skip to content

Work over stdio? #65

Description

@thisguycodes

Hey! This is awesome! I'm using https://github.com/onivim/oni and would love to use this with it, but Oni only supports stdio for language servers at the moment: could you make solargraph work over stdio as well as it's current TCP setup? My naive self tells me this should be relatively trivial to impliment.

Activity

  1. castwide commented on Jun 7, 2018

    @castwide
    Owner

    Thanks!

    A stdio transport is on the roadmap; in fact, it was the first transport I expected to deliver. I switched to TCP because I was able to get better performance out of it. I'll revisit the stdio implementation and post updates in this issue.

  2. megalithic commented on Jun 20, 2018

    @megalithic

    this would be grand! thanks @castwide

  3. zxiest commented on Jun 24, 2018

    @zxiest

    I have just submitted an issue to Oni for TCP support ; I had been looking for something like Oni for years - I just found out about it yesterday! Having it work with Solargarph would be amazing!

  4. castwide commented on Jun 25, 2018

    @castwide
    Owner

    The stdio branch includes a working implementation of the stdio transport. Run solargraph stdio to start the server. The performance issues I encountered in my earlier experiments appear to be largely resolved here. I haven't benchmarked it, but its performance "feels" very close to the socket server.

    I encourage client developers to clone/fork it and give it a try. Barring major bugs, I expect to publish it in gem version 0.23 or 0.24.

  5. castwide commented on Jun 28, 2018

    @castwide
    Owner

    The stdio branch is merged into master.

  6. megalithic commented on Jun 28, 2018

    @megalithic

    thanks @castwide will the gemspec be updated and the update get published to rubygems in the next couple days?

  7. castwide commented on Jun 29, 2018

    @castwide
    Owner

    @megalithic I expect to publish it by Monday (July 2) at the latest.

  8. castwide commented on Jul 2, 2018

    @castwide
    Owner

    Published gem v0.23.0. Clients using stdio should run solargraph stdio.

  9. zxiest commented on Jul 6, 2018

    @zxiest

    Guys, has anyone been able to get suggestions? Oni shows that Ruby has connected to language server; hovering over a class name shows me data. However, when I do [1,2,3]. , I do not get any suggestions.

      "language.ruby.languageServer.command": "solargraph",
      "language.ruby.languageServer.arguments": [
        "stdio",
      ],
    

    It seems that the first time I open the file, I am able to get some completion on Arrays; this is what the developer tools console is showing:

    Request completionItem/resolve
    

    After the first use, I start getting Request textDocument/completion (which does not trigger anything)

  10. bbtdev commented on Jul 7, 2018

    @bbtdev

    @devinalvaro Can you post a full vimrc/init.vim? I can't get it to work in multiple async complete plugins.

  11. castwide commented on Aug 7, 2018

    @castwide
    Owner

    Gem version 0.24.0 fixes a bug that affected some clients using the stdio transport. More information: #79

  12. castwide commented on Oct 3, 2018

    @castwide
    Owner

    If anyone has any problems using the stdio transport, please open a new issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions