Skip to main content

Lspleanklib

This repository is online at both:

Lspleanklib is a low-level library that implements functionality used by Webleank, including:

  • LSP (Language Server Protocol)
  • JSON-RPC
  • Multiplexing multiple lake serve workspace sessions into a single unified editor LSP session
  • Connecting to lake serve via local UNIX domain sockets
  • Running lake serve outside the editor process
  • Proper reading of stdin with Python asyncio

There are no required dependencies on Linux and macOS. However, Windows requires the Python package platformdirs to be installed. The pip install package specification lspleanklib[crossplatform] will add platformdirs as a requirement.

This package also includes two CLI utilities for advanced usage:

  • lspleank: an LSP server used by Webleank to run inside an editor process
  • lakelspout: a stdio LSP proxy that adapts Lake LSP to Leank LSP

For more information, visit Webleank and lean.castedo.com.

Leank LSP Reference

Leank LSP Reference

CLI Reference

The lspleank and lakelspout programs provide low-level functionality. For reference information on the high-level program webleank, see the Webleank README.

Lspleank

Lspleank is an LSP server. It runs as a subprocess, communicating with an editor via stdio.

$ lspleank -h
usage: lspleank  [-h] [--version] {connect,lake,stdio} [-- external_command ...]

Stdio LSP server multiplexing one or more Lake LSP servers.

positional arguments:
  {connect,lake,stdio}
    connect             connect to an lspleank socket service after starting it with the external command
    lake                internally use lakelspout to run Leank LSP servers
    stdio               use the external command to run stdio Leank LSP servers

options:
  -h, --help            show this help message and exit
  --version             show program's version number and exit

Subcommand connect

Runs as a Leank client (and LSP server), connecting to a Leank server via an lspleank socket. The command following -- is used to start a Leank server if needed.

Subcommand lake

Runs as an LSP client to lake serve (and as an LSP server to the editor). The command following -- may be used as an alternative to lake serve. The command

lspleank lake

is functionally equivalent to

lspleank stdio -- lakelspout stdio

Subcommand stdio

Runs as a Leank client (and LSP server) and executes the command following -- as a stdio Leank server.

Lakelspout

Lakelspout is a Leank service/server. Editors use Leank clients such as lspleank or webleank to connect to lakelspout processes.

$ lakelspout -h
usage: lakelspout  [-h] [--version] {stdio} [-- lake_serve_command ...]

Adapt a Lake LSP server as a Leank service/server.

positional arguments:
  {stdio}
    stdio               run as a stdio Leank LSP server

options:
  -h, --help            show this help message and exit
  --version             show program's version number and exit

Subcommand stdio

Runs as a Leank LSP server. By default, lake serve will be adapted. The optional command following -- can be used as an alternative to lake serve.

Metadata

Release files for lspleanklib 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lspleanklib 0.3.1
File Size Uploaded Provenance
lspleanklib-0.3.1.tar.gz 26.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for lspleanklib 0.3.1
File Interpreter ABI Platform
lspleanklib-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 46.8 kB

Release files / lspleanklib-0.3.1.tar.gz

Download URL lspleanklib-0.3.1.tar.gz
Size 26.6 kB
Tags Source
SHA-256 checksum
How to use checksums
cad458b75a842c14d7ab6f4d428fe56b4b27efaa4a5f62cf226470eeff2ccac7
BLAKE2b-256 checksum
How to use checksums
c23f4256510b5a57ef8ec31efd997961c59444bd68c020ae7e52dd095fd8b794
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / lspleanklib-0.3.1-py3-none-any.whl

Download URL lspleanklib-0.3.1-py3-none-any.whl
Size 20.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
512938005e6c5928056f5e873ed2faad14a4f19e01c529f8605d6b01a274aa40
BLAKE2b-256 checksum
How to use checksums
a1244ab8d3118d7979dee1d941de0955c43ad02cd323946cfd0846fef9024e2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Security for lspleanklib 0.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page