Skip to Content.
Sympa Menu

coq-club - [Coq-Club] [ANN] coq-lsp release 0.1.7

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] [ANN] coq-lsp release 0.1.7


Chronological Thread 
  • From: Emilio Jesús Gallego Arias <e AT x80.org>
  • To: Coq Club <coq-club AT inria.fr>
  • Subject: [Coq-Club] [ANN] coq-lsp release 0.1.7
  • Date: Tue, 11 Jul 2023 14:16:11 +0200
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=e AT x80.org; spf=Pass smtp.mailfrom=e AT x80.org; spf=Pass smtp.helo=postmaster AT x80.org
  • Ironport-data: A9a23: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
  • Ironport-hdrordr: A9a23:FVSvYaBUsb343DTlHemY55DYdb4zR+YMi2TDsHoBLyC9E/bo8P xG+c5x6faaskdzZJhNo7290cq7MBfh3Lp84YxUErGmWQ/5pHLtEYcK1+vfKl/bak/DHz5mu5 uIGpIWYLfN5DNB4voSjjPVLz9t+qjjzEhk792+80tQ
  • Ironport-phdr: A9a23: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
  • Ironport-sdr: 64ad480c_CXSksqQ6VSlLc4FZdXh1mDXV/NH7WONzEKGrGRUDmxlD6zS PBb+fDUywVhpzeJeGak+eeUwDlWNeIWiErKfI8A==
  • Organization: X80 Heavy Industries

Hi folks,

it's been a while, but we are happy to announce a new release of
`coq-lsp`.

Install for Coq 8.17 and Visual Studio Code is as easy as:

$ opam install coq-lsp && code --install-extension ejgallego.coq-lsp

The 0.1.7 release has been focused on refinement and bugfixes; we'd
like to thank all the users and contributors for their feedback and
work, and in particular Alex Sanchez-Stern who did a large amount of
beta testing and tweaks.

Following a suggestion by Hugo Herbelin, we now follow a naming scheme
reminiscent of Isabelle's to distinguish the several `coq-lsp`
components:

- `coq-lsp` refers to the Coq LSP server

- `coq-lsp/Editor` refers to a particular client for `Editor`, such as
`coq-lsp/Emacs`, `coq-lsp/VSCode`, or `coq-lsp/NeoVIM`.

This release also ships with some new features:

- `fcc`, the "Flèche Coq Compiler", an extensible, machine-friendly
command line compiler that provides direct access to `coq-lsp`
internal checking engine (Flèche). A very preliminary plugin API for
Flèche is also available. `fcc` does understand Coq markdown files
(`.mv`), produces errors and output in a machine-friendly format
(JSON), can use the programmable error recovery mode from Flèche,
etc...

- Coq Markdown files (`.mv`) are now handled as regular Markdown files
in `coq-lsp/VSCode`, thus one can do live proofs and use standard
Markdown mode commands like preview at the same time (contributed by
@4ever2)

- The UI for error display was improved by Tomás Díaz.

- The goal panel now display information about open and solved
obligations.

- `coq-lsp/VSCode` is now a web extension, and thus it will activate
on `github.dev` and `vscode.dev`. The server has been refactored so
it can run on the Browser context, full support is expected in the
next release.

- A new notification for performance data has been added to server.
A prototype panel displaying this data is now available for
`coq-lsp/VSCode`.

`coq-lsp` release notes are archived at [1]

We'd like to highlight some interesting third party contributions we
are aware of, and that could be of your interest:

- Bhakti Shah contributed support for her ZX Calculus Visualizer [2]
- Arthur Azevedo de Amorim started an Emacs client for coq-lsp [3]
- Pedro Carrott and Nuno Saavedra are developing a Python `coq-lsp`
client [4]

Please find below the full list of changes:

# coq-lsp 0.1.7: Just-in-time
-----------------------------

- New command line compiler `fcc`. `fcc` allows to access most
features of `coq-lsp` without the need for a command line client,
and it has been designed to be extensible and machine-friendly
(@ejgallego, #507, fixes #472)
- Enable web extension support. For now this will not try to start
the coq-lsp worker as it is not yet built. (@ejgallego, #430, fixes
#234)
- Improvements and clenaups on hover display, in particular we don't
print repeated `Notation` strings (@ejgallego, #422)
- Don't fail on missing serlib plugins, they are indeed an
optimization; this mostly impacts 8.16 by lowering the SerAPI
requirements (@ejgallego, #421)
- Fix bug that prevented "Goal after tactic" from working properly
(@ejgallego, #438, reported by David Ilcinkas)
- Fix "Error message browser becomes non-visible when there are many
goals" by using a fixed-position separated error display (@TDiazT,
#445, fixes #441)
- Message about workspace detection was printing the wrong file,
(@ejgallego, #444, reported by Alex Sanchez-Stern)
- Display the list of pending obligations in info panel (@ejgallego,
#262)
- Preliminary support to display document performance data in panel
(@ejgallego, #181)
- Fix cases when workspace / root URIs are `null`, as per LSP spec,
(#453 , reported by orilahav, fixes #283)
- Pass implicit argument information to hover printer (@ejgallego, #453,
fixes #448)
- Fix keybinding for the "Show Goals at Point" command (@4ever2, #460)
- Alert when `rootPath` is relative (#465, @ejgallego, report by Alex
Sanchez-Stern)
- Hook coq-lsp to ViZX extension (@bhaktishh, #469)
- `proof/goals` request now takes an optional formatting parameter
so clients can specify it per-request (@ejgallego, @bhaktishh, #470)
- New command line argument `--idle-delay=$secs` that controls how
much an idle server will sleep before going back to request
processing. Default setting is `0.1`, using more aggressive
settings like `0.01` can decrease latency of requests by ~4x
(@ejgallego, @hazardouspeach, #467, #471)
- Warnings from `_CoqProject` files are now applied (@ejgallego,
reported by @arthuraa, #500)
- Be more resilient when serializing unknowns Asts (@ejgallego, #503,
reported by Gijs Pennings)
- Coq's STM is not linked anymore to `coq-lsp` (@ejgallego, #511)
- More granular options `send_perf_data` `send_diags`, `verbosity`
will set them now (@ejgallego, #517)
- Preliminary plugin API for completion events (@ejgallego, #518,
fixes #506)
- Limit the number of messages displayed in the goal window to 101,
as to workaround slow render of Coq's pretty printing format. This
is an issue for example in Search where we can get thousand of
results. We also speed up the rendering a bit by not hashing twice,
and fix a parameter-passing bug. (@ejgallego, #523, reported by
Anton Podkopaev)

[1] https://github.com/ejgallego/coq-lsp/tree/main/etc/release_notes
[2] https://github.com/inQWIRE/ViZX
[3]
https://coq.zulipchat.com/#narrow/stream/329642-coq-lsp/topic/coq-lsp.20under.20Emacs.2E
[4] https://github.com/pcarrott/coq-lsp-pyclient

Kind regards,
The coq-lsp team


  • [Coq-Club] [ANN] coq-lsp release 0.1.7, Emilio Jesús Gallego Arias, 07/11/2023

Archive powered by MHonArc 2.6.19+.

Top of Page