<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="text-align:left; direction:ltr;">
<div>Up until now, we've just had our own language server client but would like to eliminate duplication. I'm just trying to figure out how.</div>
<div><br>
</div>
<div>As an example, the CDT vscode extension will download a clangd binary so the user doesn't need to worry about that. Our users are mainly gcc users who don't necessarily, and likely don't, have clang installed. So we'll need to install what they need for
 clangd to work. One API we would need is to set the location where we installed clangd so that when vscode starts up the language server, it'll start the one we installed unless the user overrides that. I'm not even clear how to do that properly given the
 start sequence of the extensions.</div>
<div><br>
</div>
<div>We'll also be generating compile_commands.json files for systems that don't do that natively. And eventually we'll need to manage build configurations where users target the same project on multiple targets. So we'll need to let clangd know when those
 things change.</div>
<div><br>
</div>
<div>In addition, we'll share the same features with our Eclipse IDE plug-ins as we migrate to clangd using Eclipse's LSP4E. Would be great if we can keep the feature sets in sync even if we can't use the same code between the two. Licensing could get interesting
 as we're EPL since we're an Eclipse project and the clangd vscode extension is MIT. Should be able to mix but need to do it carefully.</div>
<div><br>
</div>
<div>Anyway, thanks for the info. I guess for now, I'll keep an eye on things and we'll see if we run into problems as we put this together.</div>
<div>Thanks!</div>
<div>Doug.</div>
<div><br>
</div>
<div>On Mon, 2019-04-22 at 21:10 +0200, Sam McCall wrote:</div>
<blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex">
<div dir="auto">
<div>Hi Doug,</div>
<div dir="auto"><br>
</div>
<div dir="auto">The state of the world is pretty primitive, releases are by hand and any testing is manual and ad-hoc. (Unless something has changed recently that i missed)</div>
<div dir="auto"><br>
</div>
<div dir="auto">That said, the extension is a small wrapper around the basic vscode LSP client. There's <100 lines of real code, mostly implementing the status extension.</div>
<div dir="auto"><br>
</div>
<div dir="auto">So what kind of reuse are you looking for?</div>
<div dir="auto">- want to extend the client, and pick up any new additions?</div>
<div dir="auto">- want to extract some common code so it can be tested/maintained together?</div>
<div dir="auto">- looking to share release/validation infrastructure, but not necessarily extension code?</div>
<div dir="auto">- something else?</div>
<div dir="auto"><br>
</div>
<div dir="auto">Cheers, Sam</div>
<div dir="auto"><br>
<div class="gmail_quote" dir="auto">
<div dir="ltr" class="gmail_attr">On Mon, Apr 22, 2019, 18:16 Doug Schaefer via clangd-dev <<a href="mailto:clangd-dev@lists.llvm.org" target="_blank" rel="noreferrer">clangd-dev@lists.llvm.org</a>> wrote:<br>
</div>
<blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex">
<div style="text-align:left;direction:ltr">
<div>Hey gang,</div>
<div><br>
</div>
<div>As I've mentioned earlier, the Eclipse CDT project is pivoting to produce both Eclipse plug-ins and VS Code extensions to support our community. clangd is a core of that strategy.</div>
<div><br>
</div>
<div>I was just wondering about the state of the vscode extension hosted in clangd. It appears to be published regularly to the Marketplace. If we are to reuse it in the CDT vscode extension, we'll probably need to make API changes to it to allow us to change
 configuration a bit. What is the release strategy for it? Where are builds and testing done so we can monitor the health of our changes (i.e. is there a CI machine that builds it?).</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Doug</div>
</div>
_______________________________________________<br>
clangd-dev mailing list<br>
<a href="mailto:clangd-dev@lists.llvm.org" rel="noreferrer noreferrer" target="_blank">clangd-dev@lists.llvm.org</a><br>
<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.llvm.org_cgi-2Dbin_mailman_listinfo_clangd-2Ddev&d=DwMFaQ&c=yzoHOc_ZK-sxl-kfGNSEvlJYanssXN3q-lhj0sp26wE&r=NrrbvTHWa2Nbp_kAN0Hl1o3lM1WAwSes64uBjxjNhMc&m=koQ-N23zRNXwzk6h50JZ_XEdH7CLGnqyI9caDpwDQ0E&s=zPXpfOxPfpCX_X-Cgw5EDmcClMORCvm5mB3feflODoQ&e=" rel="noreferrer noreferrer noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/clangd-dev</a><br>
</blockquote>
</div>
</div>
</div>
</blockquote>
</body>
</html>