Skip to main content

MAL Language Server

mal-language-server is a language server for MAL.

General

The project uses uv as the main project manager and ruff for linting/formatting. ruff can be installed via uv as native via uv tool install ruff or use it as the dev-dependency its specified as via uv run ruff <command>.

Before running the project or editing files, uv must download the required packages. For that, use uv sync.

Running

To run the server, use the command uv run malls -- <options>.

There are two main ways of interacting with the server, via files or TCP. This can be configured via the start-up options. Obviously, they are mutually exclusive, meaning only one can be used per server instance.

  1. Files: for this option, run uv run malls --stdio, which defaults to standard input and output. To configure what files are used to read from/write to, run uv run malls --stdio -o OUT_FILE_PATH -i IN_FILE_PATH.

  2. TCP: for this option, run uv run malls --tcp, which starts the server on localhost with port 8080. To use another host or port, add those options with uv run malls --tcp --host HOST -p PORT.

Other start-up arguments, namely related to logging, can be found using uv run malls -h

Installation

NeoVim

  1. Install the server via pip, for example locally:
    pip install /folder/path/of/pyproject
    

    [!NOTE] Use -e to install it in editable/development mode, which updates the installation live.

  2. Configure your NeoVim LSP client, for example : init.lua
    vim.lsp.config['malls'] = {
        cmd = { "malls", "--stdio" },
        filetypes = { 'mal' },
    }
    vim.lsp.enable('malls')
    

    [!NOTE] Tested for NeoVim v0.11.1

CI/CD

Packages are published via UV on ubuntu to PyPI on tags pushed to the repository.

Tests are ran with pytest and pytest-xdist on ubuntu and macos. Additionally formatting and linting checks are ran with ruff.

Metadata

Release files for mal-language-server 0.1.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 mal-language-server 0.1.0
File Size Uploaded Provenance Actions
mal_language_server-0.1.0.tar.gz 84.2 kB With provenance Details for mal_language_server-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mal-language-server 0.1.0
File Interpreter ABI Platform Actions
mal_language_server-0.1.0-py3-none-any.whl Python 3 none any Details for mal_language_server-0.1.0-py3-none-any.whl

Total release size: 128.9 kB

Release files / mal_language_server-0.1.0.tar.gz

Download URL mal_language_server-0.1.0.tar.gz
Size 84.2 kB
Tags Source
SHA-256 checksum
How to use checksums
a02fab0392718cc197988a87be3a60f1062fd15a49511c858e0373ba0ba3a8db
BLAKE2b-256 checksum
How to use checksums
2b3fdb36a58ed6da1b649d122b0ef3d30a58ea9481bc3f0dfc600f1771363b7b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2025.

Transparency log

Release files / mal_language_server-0.1.0-py3-none-any.whl

Download URL mal_language_server-0.1.0-py3-none-any.whl
Size 44.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7b5f46a699841f1910bab9f7743ba4dfd474259cd58ee522de11bd1d519735b4
BLAKE2b-256 checksum
How to use checksums
a28248b5bbd37130ece06a7cd8102ffc725a90a754d3903d024417e1f662dd4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2025.

Transparency log

Security for mal-language-server 0.1.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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for mal_language_server-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2025.

Transparency log

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.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

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