pá 15. 12. 2023 v 16:32 odesílatel David G. Johnston <david.g.johns...@gmail.com> napsal: > > On Fri, Dec 15, 2023 at 8:20 AM Josef Šimánek <josef.sima...@gmail.com> wrote: >> >> (parser is not available >> in public APIs of postgres_fe.h or libpq). > > > What about building "libpg" that does expose and exports some public APIs for > the parser? We can include a reference CLI implementation for basic usage of > the functionality while leaving the actual language server project outside of > core.
Language server (LSP) can just benefit from this feature, but it doesn't cover all possibilities since LSP is meant for one purpose -> run in developer's code editor. Actual syntax check is more generic, able to cover CI checks and more. I would not couple this feature and LSP, LSP can just benefit from it (and it is usually built in a way that uses other tools and packs them into LSP). Exposing this kind of SQL check doesn't mean something LSP related being implemented in core. LSP can just benefit from this. Exposing parser to libpg seems good idea, but I'm not sure how simple that could be done since during my journey I have found out there are a lot of dependencies which are not present in usual frontend code per my understanding like memory contexts and removal of those (decoupling) would be huge project IMHO. > David J.