Skip to main content

A blazingly fast Language Server Protocol implementation for pytest

Project description

pytest-language-server 🔥

CI Security Audit PyPI version Downloads Crates.io License: MIT Python Version

Shamelessly vibed into existence 🤖✨

This entire LSP implementation was built from scratch in a single AI-assisted coding session. No template. No boilerplate. Just pure vibes and Rust. That's right - a complete, working Language Server Protocol implementation for pytest, vibed into reality through the power of modern AI tooling. Even this message about vibing was vibed into existence.

A blazingly fast Language Server Protocol (LSP) implementation for pytest, built with Rust.

Demo

pytest-language-server demo

Showcasing go-to-definition, code completion, hover documentation, and code actions. Demo also vibed into existence.

Features

🎯 Go to Definition

Jump directly to fixture definitions from anywhere they're used:

  • Local fixtures in the same file
  • Fixtures in conftest.py files
  • Third-party fixtures from pytest plugins (pytest-mock, pytest-asyncio, etc.)
  • Respects pytest's fixture shadowing/priority rules

✨ Code Completion

Smart auto-completion for pytest fixtures:

  • Context-aware: Only triggers inside test functions and fixture functions
  • Hierarchy-respecting: Suggests fixtures based on pytest's priority rules (same file > conftest.py > third-party)
  • Rich information: Shows fixture source file and docstring
  • No duplicates: Automatically filters out shadowed fixtures
  • Works everywhere: Completions available in both function parameters and function bodies
  • Supports both sync and async functions

🔍 Find References

Find all usages of a fixture across your entire test suite:

  • Works from fixture definitions or usage sites
  • Character-position aware (distinguishes between fixture name and parameters)
  • Shows references in all test files
  • Correctly handles fixture overriding and hierarchies
  • LSP spec compliant: Always includes the current position in results

📚 Hover Documentation

View fixture information on hover:

  • Fixture signature
  • Source file location
  • Docstring (with proper formatting and dedenting)
  • Markdown support in docstrings

💡 Code Actions (Quick Fixes)

One-click fixes for common pytest issues:

  • Add missing fixture parameters: Automatically add undeclared fixtures to function signatures
  • Smart insertion: Handles both empty and existing parameter lists
  • Editor integration: Works with any LSP-compatible editor's quick fix menu
  • LSP compliant: Full support for CodeActionKind::QUICKFIX

⚠️ Diagnostics & Quick Fixes

Detect and fix common pytest fixture issues with intelligent code actions:

Undeclared Fixture Detection:

  • Detects when fixtures are used in function bodies but not declared as parameters
  • Line-aware scoping: Correctly handles local variables assigned later in the function
  • Hierarchy-aware: Only reports fixtures that are actually available in the current file's scope
  • Works in tests and fixtures: Detects undeclared usage in both test functions and fixture functions
  • Excludes built-in names (self, request) and actual local variables

One-Click Quick Fixes:

  • Code actions to automatically add missing fixture parameters
  • Intelligent parameter insertion (handles both empty and existing parameter lists)
  • Works with both single-line and multi-line function signatures
  • Triggered directly from diagnostic warnings

Example:

@pytest.fixture
def user_db():
    return Database()

def test_user(user_db):  # ✅ user_db properly declared
    user = user_db.get_user(1)
    assert user.name == "Alice"

def test_broken():  # ⚠️ Warning: 'user_db' used but not declared
    user = user_db.get_user(1)  # 💡 Quick fix: Add 'user_db' fixture parameter
    assert user.name == "Alice"

How to use quick fixes:

  1. Place cursor on the warning squiggle
  2. Trigger code actions menu (usually Cmd+. or Ctrl+. in most editors)
  3. Select "Add 'fixture_name' fixture parameter"
  4. The parameter is automatically added to your function signature

⚡️ Performance

Built with Rust for maximum performance:

  • Fast workspace scanning with concurrent file processing
  • Efficient AST parsing using rustpython-parser
  • Lock-free data structures with DashMap
  • Minimal memory footprint

Installation

Choose your preferred installation method:

📦 PyPI (Recommended)

The easiest way to install for Python projects:

# Using uv (recommended)
uv tool install pytest-language-server

# Or with pip
pip install pytest-language-server

# Or with pipx (isolated environment)
pipx install pytest-language-server

🍺 Homebrew (macOS/Linux)

Install via Homebrew for system-wide availability:

brew install bellini666/tap/pytest-language-server

To add the tap first:

brew tap bellini666/tap https://github.com/bellini666/pytest-language-server
brew install pytest-language-server

🦀 Cargo (Rust)

Install from crates.io if you have Rust installed:

cargo install pytest-language-server

📥 Pre-built Binaries

Download pre-built binaries from the GitHub Releases page.

Available for:

  • Linux: x86_64, aarch64, armv7 (glibc and musl)
  • macOS: Intel and Apple Silicon
  • Windows: x64 and x86

🔨 From Source

Build from source for development or customization:

git clone https://github.com/bellini666/pytest-language-server
cd pytest-language-server
cargo build --release

The binary will be at target/release/pytest-language-server.

Setup

Neovim (with nvim-lspconfig)

require'lspconfig'.pytest_lsp.setup{
  cmd = { "pytest-language-server" },
  filetypes = { "python" },
  root_dir = function(fname)
    return require'lspconfig'.util.root_pattern('pyproject.toml', 'setup.py', 'setup.cfg', 'pytest.ini')(fname)
  end,
}

Zed

Install the extension from the extensions marketplace:

  1. Open Zed
  2. Open the command palette (Cmd+Shift+P / Ctrl+Shift+P)
  3. Search for "zed: extensions"
  4. Search for "pytest Language Server"
  5. Click "Install"

The extension will automatically detect pytest-language-server if it's in your PATH.

VS Code

Install the extension from the marketplace (coming soon) or configure manually:

{
  "pytest-language-server.enable": true,
  "pytest-language-server.path": "pytest-language-server"
}

Other Editors

Any editor with LSP support can use pytest-language-server. Configure it to run the pytest-language-server command.

Configuration

Logging

Control log verbosity with the RUST_LOG environment variable:

# Minimal logging (default)
RUST_LOG=warn pytest-language-server

# Info level
RUST_LOG=info pytest-language-server

# Debug level (verbose)
RUST_LOG=debug pytest-language-server

# Trace level (very verbose)
RUST_LOG=trace pytest-language-server

Logs are written to stderr, so they won't interfere with LSP communication.

Virtual Environment Detection

The server automatically detects your Python virtual environment:

  1. Checks for .venv/, venv/, or env/ in your project root
  2. Falls back to $VIRTUAL_ENV environment variable
  3. Scans third-party pytest plugins for fixtures

Code Actions / Quick Fixes

Code actions are automatically available on diagnostic warnings. If code actions don't appear in your editor:

  1. Check LSP capabilities: Ensure your editor supports code actions (most modern editors do)
  2. Enable debug logging: Use RUST_LOG=info to see if actions are being created
  3. Verify diagnostics: Code actions only appear where there are warnings
  4. Trigger manually: Use your editor's code action keybinding (Cmd+. / Ctrl+.)

For detailed troubleshooting, see CODE_ACTION_TESTING.md.

Supported Fixture Patterns

Decorator Style

@pytest.fixture
def my_fixture():
    """Fixture docstring."""
    return 42

Assignment Style (pytest-mock)

mocker = pytest.fixture()(_mocker)

Async Fixtures

@pytest.fixture
async def async_fixture():
    return await some_async_operation()

Fixture Dependencies

@pytest.fixture
def fixture_a():
    return "a"

@pytest.fixture
def fixture_b(fixture_a):  # Go to definition works on fixture_a
    return fixture_a + "b"

Fixture Priority Rules

pytest-language-server correctly implements pytest's fixture shadowing rules:

  1. Same file: Fixtures defined in the same file have highest priority
  2. Closest conftest.py: Searches parent directories for conftest.py files
  3. Virtual environment: Third-party plugin fixtures

Fixture Overriding

The LSP correctly handles complex fixture overriding scenarios:

# conftest.py (parent)
@pytest.fixture
def cli_runner():
    return "parent runner"

# tests/conftest.py (child)
@pytest.fixture
def cli_runner(cli_runner):  # Overrides parent
    return cli_runner  # Uses parent

# tests/test_example.py
def test_example(cli_runner):  # Uses child
    pass

When using find-references:

  • Clicking on the function name def cli_runner(...) shows references to the child fixture
  • Clicking on the parameter cli_runner(cli_runner) shows references to the parent fixture
  • Character-position aware to distinguish between the two

Supported Third-Party Fixtures

Automatically discovers fixtures from popular pytest plugins:

  • pytest-mock: mocker, class_mocker
  • pytest-asyncio: event_loop
  • pytest-django: Database fixtures
  • pytest-cov: Coverage fixtures
  • And any other pytest plugin in your environment

Architecture

  • Language: Rust 🦀
  • LSP Framework: tower-lsp
  • Parser: rustpython-parser
  • Concurrency: tokio async runtime
  • Data Structures: DashMap for lock-free concurrent access

Development

Prerequisites

  • Rust 1.83+ (2021 edition)
  • Python 3.10+ (for testing)

Building

cargo build --release

Running Tests

cargo test

Logging During Development

RUST_LOG=debug cargo run

Security

Security is a priority. This project includes:

  • Automated dependency vulnerability scanning (cargo-audit)
  • License compliance checking (cargo-deny)
  • Daily security audits in CI/CD
  • Dependency review on pull requests
  • Pre-commit security hooks

See SECURITY.md for our security policy and how to report vulnerabilities.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Development Setup

  1. Install pre-commit hooks:

    pre-commit install
    
  2. Run security checks locally:

    cargo audit
    cargo clippy
    cargo test
    

License

MIT License - see LICENSE file for details.

Acknowledgments

Built with:

Special thanks to the pytest team for creating such an amazing testing framework.


Made with ❤️ and Rust. Shamelessly vibed into existence. Blazingly fast. 🔥

When you need a pytest LSP and the vibes are just right.

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

pytest_language_server-0.7.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pytest_language_server-0.7.0-py3-none-win_amd64.whl (2.8 MB view details)

Uploaded Python 3Windows x86-64

pytest_language_server-0.7.0-py3-none-win32.whl (2.6 MB view details)

Uploaded Python 3Windows x86

pytest_language_server-0.7.0-py3-none-musllinux_1_2_x86_64.whl (3.3 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

pytest_language_server-0.7.0-py3-none-musllinux_1_2_i686.whl (3.3 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

pytest_language_server-0.7.0-py3-none-musllinux_1_2_armv7l.whl (3.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

pytest_language_server-0.7.0-py3-none-musllinux_1_2_aarch64.whl (3.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

pytest_language_server-0.7.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

pytest_language_server-0.7.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

pytest_language_server-0.7.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

pytest_language_server-0.7.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (3.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

pytest_language_server-0.7.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

pytest_language_server-0.7.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pytest_language_server-0.7.0-py3-none-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pytest_language_server-0.7.0-py3-none-macosx_10_12_x86_64.whl (3.1 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file pytest_language_server-0.7.0.tar.gz.

File metadata

  • Download URL: pytest_language_server-0.7.0.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pytest_language_server-0.7.0.tar.gz
Algorithm Hash digest
SHA256 2af5dfac0431d9d40a3a1ecc6f213098e721a577dffd1eabb88ae45df9a0fc73
MD5 090d0b4d23848f7f729c2cbbd8e412b3
BLAKE2b-256 2fe5bea5a85e5d0070b55044f8b071df4294c39a5f446f56823356a19a684102

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0.tar.gz:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 21a45ede94b5fcb5762b84f2efa8034587b3023d5b6edcecd0147b9731fd8405
MD5 d9c2222d84f6f8729843d6eef8a043b0
BLAKE2b-256 ee83ce89a180c1449686a3c57b8d3cc31ee1bdf2269894f3eb11aef5edb8b634

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-win_amd64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-win32.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-win32.whl
Algorithm Hash digest
SHA256 104e90e6a66ac1f464d70e165d2cf68a13d2cfbb418538f7bfc7f5aa06c368e8
MD5 c898cf19df35ec316664837f251cb77c
BLAKE2b-256 65b95387290d94a64f343968a0b91d816ca2ab82981a0a9bcb18b61d778a6b54

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-win32.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 68b9c191a77c7f0454089ebcb434f75c06c72e027f0de5a66aa35e16b0bb4687
MD5 7536f18b5820c1f1fc902a745d0b3d56
BLAKE2b-256 0e7d9b9faaac8550f815ff6fa330323649dfb7cb427d6a06f125e415672674d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-musllinux_1_2_x86_64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 e686c4f414efc273b1a370b33b6e49a9937a7b69ede4e8293df3aff0c66bf038
MD5 ca855d37adef84be59e8ba809413dc59
BLAKE2b-256 a0294d21b2c154b94e5b9d0e0627580977013ff3563458a909d2ec0250713575

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-musllinux_1_2_i686.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 7097fe555169b8c6eddce3cb74c5f34f26aab7d20a709859221371930f52a6dc
MD5 90cd969c33dd171da89cbe8af43a9932
BLAKE2b-256 bcd23adc44ed251d730f20530d92fc61dc898c4b9c9933bb2258778c48b6141b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-musllinux_1_2_armv7l.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 39987c80fc568783ff46e0a704bd10d91187177814b3d295f2d3d02ffc3da219
MD5 3a5025655b2d177f97408a862bf36e58
BLAKE2b-256 f3b9b56ad19a47a2d118c7cfa84c2cba2cb645bcc17cc26058d2971c418f0b0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-musllinux_1_2_aarch64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bbeae631bbb3ba1398167b7b27d5071fa7ee469240f3c267530dbd45341a4ebd
MD5 ca76c77db3bc0b4918e3dce585b63623
BLAKE2b-256 aefe033a868230aea122972b2a05806750186d8a3d2d0718f8a0e2be4fb94b0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 2e63d0706b217c5534c231d06a953354b62e41c22dffa0ed31ca5ccdfb72dc51
MD5 62aa2e7464a606695446d1cce901c668
BLAKE2b-256 b3b7fe62f3ae58450a99ca7c72047bf6c97549aabe47c433a74bbe40088f4f01

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 7897da5b28280ad258f70dc88d16c981807b5bd0510e6a8ccc0ca803e6f7852b
MD5 cccd477316a7b6085f8b68c55db2ab8d
BLAKE2b-256 c61c44e0349d712342444ddb2de589e526e7e6eac150965b8a05d5687763eb14

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 fa2b8ac3f7e61b33e6df1f3ed115468f2e0a59448f9efe530fa497034fa663dd
MD5 8e3f70cb39eb4eb0a4dffd20163a6214
BLAKE2b-256 da9ebe131d443c639727ceecb23995690b0a1b86082df32ce0193f4a5b8382ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 dc5530729c03fb35fb4e2d918b965a33fa0fd28a2e685d1c30a01b853c234912
MD5 0c2aa28fa1a5f08b98ff091c753a6c5e
BLAKE2b-256 3deaa7dca4e4017fd59be6208f259b1e37ecc5e245713e047cc6c650750fdf45

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e2b945b3e9dc8cffc5af5766c0b8192db1bda0177749240574b7d22603ba24ee
MD5 b725190b86909610cd34b5140ea3e281
BLAKE2b-256 7b8e26300e8cc1c91f0af587a416b41211aac7aa22e3b1da0e79eb626393a3c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 014f82f3d465c7c62b7c9862b7cdb58a4264009caddd6f2718d288930c183ca1
MD5 057b771acbd8d55de15c86459c06676b
BLAKE2b-256 25f576b321262702d0ceef18762d470c6160e960445c5cc88a6b1e605cf82812

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytest_language_server-0.7.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pytest_language_server-0.7.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 004e8ae21afef748cb01f54dee214c2ec05bf88c4c46c06b68af19198200dcd6
MD5 6b51eb05f82db66ea4edfe28d587b9b4
BLAKE2b-256 ed64edd460356bcab2611b4cfda825574dec1598cc48d4a58d2ab9e45acea04f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytest_language_server-0.7.0-py3-none-macosx_10_12_x86_64.whl:

Publisher: release.yml on bellini666/pytest-language-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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