Skip to main content

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-definition on types
  2. docstring display on hover
  3. find references to a symbol (e.g. right-click > Find All References)
  4. supports working on an Inmanta project or an Inmanta module

Not supported yet

  1. 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

Metadata

Release files for inmantals 1.5.0

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

Source distribution (sdist)

Source distribution for inmantals 1.5.0
File Size Uploaded Provenance Actions
inmantals-1.5.0.tar.gz 25.1 kB Without provenance Details for inmantals-1.5.0.tar.gz

Release files / inmantals-1.5.0.tar.gz

Download URL inmantals-1.5.0.tar.gz
Size 25.1 kB
Tags Source
SHA-256 checksum
How to use checksums
6178ed3860f1e95d48ee2c07355200761be57929aea46c7aedc75dc8cd8e3705
BLAKE2b-256 checksum
How to use checksums
00199aa4fae43decb53eea42b959e28f528f35319df7406dd91095354164137f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.5

Security for inmantals 1.5.0

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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