emacs-lsp / lsp-mode

Emacs client/library for the Language Server Protocol
https://emacs-lsp.github.io/lsp-mode
GNU General Public License v3.0
4.78k stars 884 forks source link

lsp-mode looking for additional collaborators/members #1075

Closed yyoncho closed 3 years ago

yyoncho commented 5 years ago

Given the fact that the workload has increased and @vibhavp is busy last few months IMO it will be better for the project if more people have commit/merge rights.

yyoncho commented 5 years ago

@alypeng @CyberShadow @sebastiansturm

vibhavp commented 5 years ago

Sure, let's do a call for contributors on Reddit and Twitter as well?

yyoncho commented 5 years ago

@vibhavp make sense, but let us give a chance to some of the active contributors.

sebastiansturm commented 5 years ago

Honestly, I'm not sure how much commitment you expect to see (per person). While I'm very thankful for the massive amount of work and energy you two put into the project, I'm pretty sure I wouldn't contribute remotely as much. On the other hand, if testing/discussing the occasional PR and working on an open issue now and then is good enough, then I'd gladly take part in the project. Second, lsp-mode is used by too many people to break spontaneously, so even if I had commit rights, I think I'd be very careful not to touch anything that looks like core functionality for a pretty long time, or at least not without thorough discussion (in which case it may not save you any work in the end). Some specific, and low-risk, ways in which I guess I could help out: (i) #821 seems halfway done already even if the original contributor doesn't want to take it further (ii) I could revive issue #999 which I started myself; while I currently have some barebones replacement for cc-mode on top of which I'm running lsp-mode, it's not nearly well-polished or generic enough (iii) more automatic tests are probably always helpful as they'd allow new contributors to work on core code with greater confidence; I never checked until today but apparently there is some integration testing system in place though that currently only covers pyls? Am I missing something here?

alypeng commented 5 years ago

I would definitely be interested but I am still quite new to Emacs (and LSP as well to be honest) so not sure it really makes sense for me :grinning:

CyberShadow commented 5 years ago

I would love to help but I just don't have the bandwidth, I still have https://github.com/Emacs-D-Mode-Maintainers/Emacs-D-Mode/pull/93 to take care of. Also I'm not yet very invested into LSP.

yyoncho commented 5 years ago

@sebastiansturm I do not have expectations, but I guess whatever makes sense.

Collaborator

willing to support certain language server(+ corresponding language server) like @seagle0128 do for MS Python qualifies for a collaborator.

I could number a few that already do that for certain languages:

  1. @dsyzling @kurnevsky for scala.
  2. @TOTBWF @juergenhoetzel for fsharp

Team member

  1. Willing to learn lsp-mode(and related) internals and working on the overall improvement of the project.
  2. Implementing new features
  3. Handling some of the maintenance burdens - review PR/fix PRs/changelogs and so on.

more automatic tests are probably always helpful as they'd allow new contributors to work on core code with greater confidence;

I wish we had integration tests for each language server but IMHO without a person/team behind each language server specific suite, it will be impossible for us to support it.

I never checked until today but apparently there is some integration testing system in place though that currently only covers pyls? Am I missing something here?

It basically covers lsp-mode being able to start. There is also this - https://github.com/emacs-lsp/lsp-java/tree/master/features (which is red for a long time).

@alypeng if you are now starting with elisp you could spend some time in the project, gain experience and then join the project. I didn't have any elisp experience too year and a half ago. Also, if you have questions or if you are willing to work on a certain feature feel free to ping me in gitter.

yyoncho commented 5 years ago

@sebastiansturm #821 is relevant to https://github.com/flycheck/flycheck/issues/1631 . We might want to implement these in flycheck to avoid fragmentation.

dsyzling commented 5 years ago

@yyoncho I'd like to help out anyway I can, I know you appreciate time is an issue for everybody so I'll leave that caveat there since it applies to me as with everyone. I'd like to be able to help you with the burden of the lsp maintenance, I'm conscious you are taking on quite a lot at the moment as the success of the project has grown and the language servers multiply.

sebastiansturm commented 5 years ago

ok, I'd be willing to work on all of the three mentioned points but at a much lower rate compared to you. My focus, at least for now, would probably be on the C++ side (currently using clangd), some OCaml (using merlin-lsp) perhaps. Since I've been struggling with clangd's utf-16 offset error for a few weeks now and haven't yet got around to look into that more closely, that might also be a good place for me to start. I'm surprised about #821 being so tightly connected to flycheck, perhaps you were thinking of some other issue?

yyoncho commented 5 years ago

@sebastiansturm great added you to lsp-mode team.

I'm surprised about #821 being so tightly connected to flycheck, perhaps you were thinking of some other issue?

Yes, it is actually another issue #382

Gastove commented 5 years ago

Hi all. Pretty new to everything here, and definitely still getting up to speed. But -- I'm very excited about this whole project, and would be delighted to help out some.

brotzeit commented 5 years ago

I can try to take care of the rust related stuff, but I will need some time to get familiar with the code base.

kurnevsky commented 5 years ago

I could number a few that already do that for certain languages:

I can help with rust as well :)

yyoncho commented 5 years ago

I sent invitations to @kurnevsky @dsyzling @TOTBWF @brotzeit . I will update the readme and the PR/Pull request templates with information about the "owner" to CC opening issues/sending PRs depending on the language server.

TOTBWF commented 5 years ago

Accepted! 🙂 Hopefully I can spend some time getting dap-mode up and running for F# soon.

seagle0128 commented 5 years ago

I can take some time on lsp-go if possible since I am also working on some go projects recently.

brotzeit commented 5 years ago

@yyoncho Since the size of an organization reflects the community that we have around the project, I would consider making collaborators to members. Just a thought.

yyoncho commented 5 years ago

@brotzeit sent members invocations to everyone.

Also, I created the following table in the readme: https://github.com/emacs-lsp/lsp-mode/#members

muirdm commented 4 years ago

I'm also willing to take some responsibility for Go stuff. I'd like to get into core lsp-mode work as well, but I'm not there yet.

nedijahij commented 4 years ago

I used to learn some elisp and tried to practice by creating some extensions too and wanted to help and contribute some works here but it's hard, harder than I could. I could write, modify java project without any issue when come to open source project, yet come to elisp and lsp, i am dead.

The problem is that, there is not enough tutorial, or sample and so I can't find where and how to reach the goal. If there is enough lsp tutorial from basic to some level, then it would be good.

danielmartin commented 4 years ago

@nedijahij There a good Emacs Lisp Introduction manual in Emacs. Press C-h i, m, Emacs Lisp Intro, RET.

brotzeit commented 4 years ago

@nedijahij IMO it's the best way to start with learning from experienced users. Learn how to lookup documentation quickly and which packages can be used to build your elisp dev environment. This video helped me a lot

nedijahij commented 4 years ago

Thank @danielmartin @brotzeit . Beside that, what I concern the most is not elisp but LSP protocol. I don't understand how it works. For example, imagine if i want to make java lsp server check syntax error and then highlight the whole line in red, then where should I find flow to interact with lsp server or document related to "how to interact with java lsp server and make them check my syntax".

So, in short, what I concern is how can I start with lsp, find document, and flow. Please guide me this. Thanks.

yyoncho commented 4 years ago

@danielmartin and @kiennq are now members too.

As a side note, I would encourage anyone in the list here to join the gitter channel which is often used for discussions. We could use team conversations but they seem to be restricted and visible only for team members - IMO it is better to keep them public. Let me know if you have alternative suggestions for handling of the informal discussions.

nbfalcon commented 3 years ago

I'd like to contribute more to lsp-mode and would be happy to become a maintainer.

danielpza commented 3 years ago

@yyoncho I can help with eslint/javascript-typescript packages. I'm still learning emacs lisp though.

yyoncho commented 3 years ago

@nbfalcon - seems like someone has added you as a member? @danielpza - good, I guess when you feel that you are ready you may ping us again.

jcs090218 commented 3 years ago

Maybe we should pin this issue? ;)

nbfalcon commented 3 years ago

@yyoncho you've added me to emacs-lsp because I contributed to dap-mode, to which I have push access, a lot. I don't have push-access to lsp-mode, though.

yyoncho commented 3 years ago

@nbfalcon added you to lsp-mode team as well. Note that it does not provide push rights, but you can merge approved PRs.

nbfalcon commented 3 years ago

Great, thank you!

yyoncho commented 3 years ago

Cleanup. Applications still open.