Skip to content

Latest commit

 

History

History
37 lines (31 loc) · 1.68 KB

File metadata and controls

37 lines (31 loc) · 1.68 KB

KLighD Python Types

This project holds automatically generated types that can be used to implement language servers that can speak the language server protocol variant understood by klighd. A very simple example of a python language server using this library is the plyghd-ls-demonstrator

Getting Started

Setup a virtual environment and install the required packages.

python -m venv ls-env
source ls-env/bin/activate
pip install -r requirements.txt

Generating the KGraph data structure from schema

The schema is defined in klighd-vscode.

The generated types are committed in this repository to be published as a python package. If the schemas are updated they can be rebuilt using the rebuild_types.sh build script. For this to work the initial setup under getting started has to have been done.

Releasing Python package

Automatic Build and Release with Github Workflow

To publish a new release, when klighd has made modifications to the schema for example, use the rebuild-and-publish workflow. Select the type of release (major/minor/patch) and run the workflow. It will automatically handle everything.

Manual Release Process

Update the version number using hatch.

hatch version major/minor/patch

Build the distribution files with Hatchling.

python3 -m build

Upload the package to PyPI with twine.

python -m twine upload --repository pypi dist/*