buflsp

package
v1.69.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 29, 2026 License: Apache-2.0 Imports: 77 Imported by: 0

Documentation

Overview

Package buflsp implements a language server for Protobuf.

The main entry-point of this package is the Serve() function, which creates a new LSP server.

Index

Constants

View Source
const CommandCheckPluginUpdates = "buf.generate.checkPluginUpdates"

CommandCheckPluginUpdates is the LSP workspace command to check for newer versions of remote plugins in a buf.gen.yaml file and publish informational diagnostics for any that are outdated.

View Source
const CommandRunGenerate = "buf.generate.run"

CommandRunGenerate is the LSP workspace command to run buf generate for a buf.gen.yaml file.

Variables

This section is empty.

Functions

func FilePathToURI added in v1.66.0

func FilePathToURI(path string) protocol.URI

FilePathToURI converts a file path to a properly encoded URI.

func Serve

func Serve(
	ctx context.Context,
	bufVersion string,
	wktBucket storage.ReadBucket,
	container appext.Container,
	controller bufctl.Controller,
	wasmRuntime wasm.Runtime,
	stream jsonrpc2.Stream,
	queryExecutor *incremental.Executor,
	moduleKeyProvider bufmodule.ModuleKeyProvider,
	graphProvider bufmodule.GraphProvider,
	curatedPluginVersionProvider CuratedPluginVersionProvider,
) (jsonrpc2.Conn, error)

Serve spawns a new LSP server, listening on the given stream.

Returns a context for managing the server.

Types

type CuratedPluginVersionProvider added in v1.69.0

type CuratedPluginVersionProvider interface {
	// GetLatestVersion returns the latest semver version string for the plugin,
	// or an empty string if the plugin is unknown or has no published versions.
	GetLatestVersion(ctx context.Context, registry, owner, plugin string) (string, error)
}

CuratedPluginVersionProvider checks for the latest version of a BSR-hosted curated plugin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL