jacobdufault / cquery

C/C++ language server supporting multi-million line code base, powered by libclang. Emacs, Vim, VSCode, and others with language server protocol support. Cross references, completion, diagnostics, semantic highlighting and more

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Is this project dead?

rowanG077 opened this issue · comments

I really liked this plugin and it's really close to being workable for me in production. But the current release is completely broken. Since there haven't been any updates or even communication from the developers I wonder whether this project is dead and I should just move on?

I think it probably is. To be fair, this is a super complex project, and there's been a lot of maintenance pressure. I don't think the founder was ever getting payed to work on this.

It did spawn a fork: https://github.com/MaskRay/ccls, which is actively developed, but the lead is explicitly not interested in supporting community requests, which IMO bodes well for its longevity.

That's really unfortunate. This was an incredible plugin. I will check out the fork, thank you!

Maybe it is given up because of clangd which will eventually reach feature parity.

what a pity!

I think it probably is. To be fair, this is a super complex project, and there's been a lot of maintenance pressure. I don't think the founder was ever getting payed to work on this.

It did spawn a fork: https://github.com/MaskRay/ccls, which is actively developed, but the lead is explicitly not interested in supporting community requests, which IMO bodes well for its longevity.

However, I tried ccls. Its parsing speed is not as good as cquery for my projects.

I've filed a few issues and the ccls developer is super responsive and interested in what people want--but he definitely also has his opinions of what ccls should be. i haven't done a direct performance comparison to cquery, but it's been a pretty seamless upgrade to move to ccls. it should be easy to try a switch, and in my experience, strictly better.

Guys, you definitely should try clangd. I've just installed clangd-8 on ubuntu 18.04, works fine with emacs + lsp-mode, super fast and straightforward. Plus a lot of options and I have no doubts about support in long term. Just try it. Btw guys from JetBrains use clangd in Clion

Both ccls and clangd do not support cross compile project well, but cquery did this job quite well.

@MaskRay i think you've discussed cross-compiled projects in ccls, chime in if you want.

Many people use cross gcc with gcc specific flags. While clang provides good compatibility with gcc, some options are not recognized by clang. cquery takes a whitelist approach (see src/project.cc): it blocks most flags by default. That works for many workflows but may cause some surprise in some scenarios.

just switched to clangd, hoping gcc make its version soon... :D

Though, Ccls is a great alternative.

After clang 8.0.0 is released for some days, the project is still shipped with clang 7.0.0, maybe the project is not active for some days. For me, most of the time it works well both in Windows and Linux. It's a pity if this project is dead.

@tan-wei

As said, we still have ccls and clangd, still on-going lsp projects!

@alexanderbarbosa I'v tried ccls some days (BTW, the author appears above) in Atom, it takes some days for me to report my experience.

@tan-wei

Ccls author have been helping out clangd project, so I guess that clangd will reign alone soon enough.

Anyway, I hope soon we, C devs, receive a C99>11 only LSP project. I think both project, although awesome at that, are overkill for that end! :D

@alexanderbarbosa Not true.. clangd 1) doesn't handle deleted files (periodical rebuild to mitigate this issue) 2) uses AST based approach for many in-document requests that consume more CPU cycles. I only make some NFC changes/cleanups to clangd.

@MaskRay

Fair.

Though, I dont recall comparing both projects.

:D