Skip to content

Conversation

ejgallego
Copy link
Contributor

Language Server Protocol native server for Coq

CHANGES:

CHANGES:

------------------------------

 - [js] [deps] Bump to findlib 1.9.8, use vanilla API for loading and
   remove our own local wrapper (@ejgallego, ejgallego/coq-lsp#975).
 - [petanque] New `petanque/ast` and `petanque/ast_at_pos`
   (@ejgallego, @JulesViennotFranca, ejgallego/coq-lsp#980)
 - [serlib] Support for generic Ast analyzers. This opens the door to
   many feature requests such as syntax coloring, dependency
   extraction, etc... (@ejgallego, @JulesViennotFranca, ejgallego/coq-lsp#981)
 - [fleche] Support "rocq" markdown delimiters in .mv files
   (@ejgallego, ejgallego/coq-lsp#987)
 - [workspace] Support _RocqProject (@ejgallego, ejgallego/coq-lsp#988, fixes ejgallego/coq-lsp#934)
 - [lsp] [getDocument] Allow to get goals in one shot. We also
   refactor the response type to accommodate different
   meta-data. Note: (!) breaking change. (@ejgallego, ejgallego/coq-lsp#985, fixes
   ejgallego/coq-lsp#862, thanks to the Alectryon team)
 - [lsp] Better error handling in URI parsing (@ejgallego, ejgallego/coq-lsp#994, thanks to
   Adrien from Zulip)
 - [lsp] Better protocol-level handling for our non-standard `Lang.Point`
   and `Lang.Diagnostic` types, via global flags that allow us to
   choose the input/output representation for non-standard field such
   as [Point.offset]. This ensures that leaks of these non-standard
   fields are rarer. (@ejgallego, ejgallego/coq-lsp#995, cc ejgallego/coq-lsp#279, cc ejgallego/coq-lsp#2, thanks to
   Adrien from Zulip)
 - [lsp] [completion] Rework completion configuration into a
   `coq-lsp.completion` json object. The `unicode_completion` setting
   is now deprecated, and has been replaced by
   `completion.unicode.enable` (@ejgallego, ejgallego/coq-lsp#993)
 - [lsp] [completion] [vscode] Unicode completion commit characters
   are now configurable via the server setting variable
   `completion.unicode.commit_chars`. (@Durbatuluk1701, ejgallego/coq-lsp#993)
 - [goals] [config] New (global) option for goal display method
   `proof/goals`: `messages_follow_goal`. If `true`, `proof/goals`
   will show errors and messages for the same sentence goals are
   shown; if `false`, it will always show errors and messages for the
   specified `position`, if there is a Rocq sentence at hand
   (@jpoiret, @ejgallego, ejgallego/coq-lsp#999, fixes: ejgallego/coq-lsp#941)
 - [coq] Install full state before parsing. Before we did only
   `Pcoq.unfreeze` but that is not enough, in particular the call to
   `get_default_proof_mode` will not be correct (@ejgallego, @pimotte,
   ejgallego/coq-lsp#1011, fixes ejgallego/coq-lsp#656)
 - [misc] Don't depend on Jane Street's base (@patrick-nicodemus
   @ejgallego, ejgallego/coq-lsp#1004)
 - [wasm worker] Add WebAssembly based worker based on waCoq. This is
   now the default for the .vsix binary build. For now, we include
   Rocq's Stdlib and Waterproof (@corwin-of-amber, @ejgallego,
   @pimotte, ejgallego/coq-lsp#1008, cc ejgallego/coq-lsp#833, fixes ejgallego/coq-lsp#907, fixes ejgallego/coq-lsp#908, fixes ejgallego/coq-lsp#913)
 - [opam] Added `x-maintenance-intent` intent field. (@ejgallego,
   ejgallego/coq-lsp#1020)
 - [lsp] [didOpen] `languageId` now takes priority over uri extension
   in LSP `didOpen`. (@ejgallego, ejgallego/coq-lsp#1021, fixes ejgallego/coq-lsp#1005)
 - [coq] incorporate experimental `coq-layout-engine` printer, both in
   client and server parts (@ejgallego, ejgallego/coq-lsp#668, see also ejgallego/coq-lsp#72 and
   jscoq/jscoq#282 )
 - [lsp] [code] New notification `$/coq/executionInformation` which
   will signal clients when rocq-lsp does intent to start to execute a
   sentence. Experimentally, this is used to provide a red glow on
   long-running commands in coq-lsp/VSCode, to provide better user
   feedback on long-running commands (@ejgallego, suggested by
   @jpoiret, ejgallego/coq-lsp#1002)
 - [lsp] [outline] Support `Notation`, `Ltac` and `Ltac Notation` in
   outline entries (@ejgallego, ejgallego/coq-lsp#1025, fixes ejgallego/coq-lsp#632)
"ocamlfind" { >= "1.9.8" }

# Rocq
"rocq-core" { >= "9.1" < "9.2" }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAICS, this requires a rocq-core version not yet released to the opam-repo, thus causing Failed - Everything was skipped and coq-lsp.0.2.4+9.1 (failed: [SKIP] Package not available) on all workflows.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed, it seems Rocq 9.1 didn't reach the opam archive yet. I'll rebase and ping once that happens.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants