Skip to content

kieler/klighd-python-types

Repository files navigation

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.

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/*

About

Automatically generated types for building language servers to speak with the klighd client.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published