Skip to main content

Inmanta Language Server

Project description

Inmanta Language server

Provides the bridge between the Inmanta compiler and Visual Studio Code IDE, by implementing a Language Server.

For recent versions of inmanta-core (>=6), the server takes ownership of the Python environment it runs in and installs any modules and module dependencies in that environment. For older versions of inmanta-core, a separate compiler venv is used, which can be configured with the compilerVenv option.

This is alpha software, it may or may not work

Installation

  1. mkvirtualenv -p python3 lstesting

  2. pip install inmantals

  3. install the inmanta extension via marketplace

  4. change config for the extension (ctrl+,)

    1. set inmanta.pythonPath to the virtual env you just created ~/.virtualenvs/lstesting/bin/python3
    2. set inmanta.ls.enabled to true

Features

  1. navigate-to-defintion on types

Not supported yet

  1. re-load code (not upon edit or upon save, need to close vscode)
  2. work with incorrect models (needs to compile, all or nothing)

Troubleshooting

No module named x

If compilation fails with the message "no module named x" where x is a Python module, you might need to clean up the virtual environments used by the compiler. This issue can be caused by running the compiler from multiple different environments. To clean up the virtual environment, remove the .env directory in the Inmanta project directory as well as the compiler venv specified by the client, if it exists.

References

https://microsoft.github.io/language-server-protocol/specification

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inmantals-1.2.0.tar.gz (10.4 kB view details)

Uploaded Source

File details

Details for the file inmantals-1.2.0.tar.gz.

File metadata

  • Download URL: inmantals-1.2.0.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.3 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.8

File hashes

Hashes for inmantals-1.2.0.tar.gz
Algorithm Hash digest
SHA256 5484715e3fbba7d78a7f33b29c047c2e830016b95da92b6ac86cc1c55acd410d
MD5 2dd5f73ef73442eb7a59ed8378a6dbfe
BLAKE2b-256 b2d72ea3bf25f2ae0f248645cfcb082534add370420eb0f5a3d080bc40e66859

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page