php-lsp 0.2.0

A PHP Language Server Protocol implementation
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "php-lsp"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A PHP Language Server Protocol implementation"
readme = "README.md"
license = "MIT"
repository = "https://github.com/jorgsowa/php-lsp"

[features]
dhat-heap = ["dep:dhat"]

[lib]
name = "php_lsp"
path = "src/lib.rs"

[[bin]]
name = "mem_index"
path = "src/bin/mem_index.rs"

[[bin]]
name = "php-lsp"
path = "src/main.rs"

[[test]]
name = "e2e_call_hierarchy"
path = "tests/e2e_call_hierarchy.rs"

[[test]]
name = "e2e_code_action_resolve"
path = "tests/e2e_code_action_resolve.rs"

[[test]]
name = "e2e_code_actions"
path = "tests/e2e_code_actions.rs"

[[test]]
name = "e2e_completion"
path = "tests/e2e_completion.rs"

[[test]]
name = "e2e_concurrent"
path = "tests/e2e_concurrent.rs"

[[test]]
name = "e2e_configuration"
path = "tests/e2e_configuration.rs"

[[test]]
name = "e2e_cross_file"
path = "tests/e2e_cross_file.rs"

[[test]]
name = "e2e_declaration"
path = "tests/e2e_declaration.rs"

[[test]]
name = "e2e_diagnostics"
path = "tests/e2e_diagnostics.rs"

[[test]]
name = "e2e_doc_lifecycle"
path = "tests/e2e_doc_lifecycle.rs"

[[test]]
name = "e2e_document_link"
path = "tests/e2e_document_link.rs"

[[test]]
name = "e2e_document_symbols"
path = "tests/e2e_document_symbols.rs"

[[test]]
name = "e2e_file_create_stub"
path = "tests/e2e_file_create_stub.rs"

[[test]]
name = "e2e_file_notifications"
path = "tests/e2e_file_notifications.rs"

[[test]]
name = "e2e_file_ops"
path = "tests/e2e_file_ops.rs"

[[test]]
name = "e2e_file_rename"
path = "tests/e2e_file_rename.rs"

[[test]]
name = "e2e_formatting"
path = "tests/e2e_formatting.rs"

[[test]]
name = "e2e_implementation"
path = "tests/e2e_implementation.rs"

[[test]]
name = "e2e_incremental"
path = "tests/e2e_incremental.rs"

[[test]]
name = "e2e_lifecycle"
path = "tests/e2e_lifecycle.rs"

[[test]]
name = "e2e_protocol"
path = "tests/e2e_protocol.rs"

[[test]]
name = "e2e_references"
path = "tests/e2e_references.rs"

[[test]]
name = "e2e_rename"
path = "tests/e2e_rename.rs"

[[test]]
name = "e2e_robustness"
path = "tests/e2e_robustness.rs"

[[test]]
name = "e2e_selection_range"
path = "tests/e2e_selection_range.rs"

[[test]]
name = "e2e_semantic_tokens"
path = "tests/e2e_semantic_tokens.rs"

[[test]]
name = "e2e_signature_help"
path = "tests/e2e_signature_help.rs"

[[test]]
name = "e2e_symbol_resolve"
path = "tests/e2e_symbol_resolve.rs"

[[test]]
name = "e2e_symfony_call_hierarchy"
path = "tests/e2e_symfony_call_hierarchy.rs"

[[test]]
name = "e2e_symfony_demo"
path = "tests/e2e_symfony_demo.rs"

[[test]]
name = "e2e_symfony_hover"
path = "tests/e2e_symfony_hover.rs"

[[test]]
name = "e2e_symfony_implementation"
path = "tests/e2e_symfony_implementation.rs"

[[test]]
name = "e2e_symfony_navigation"
path = "tests/e2e_symfony_navigation.rs"

[[test]]
name = "e2e_symfony_references"
path = "tests/e2e_symfony_references.rs"

[[test]]
name = "e2e_symfony_search"
path = "tests/e2e_symfony_search.rs"

[[test]]
name = "e2e_symfony_semantic_tokens"
path = "tests/e2e_symfony_semantic_tokens.rs"

[[test]]
name = "e2e_symfony_type_hierarchy"
path = "tests/e2e_symfony_type_hierarchy.rs"

[[test]]
name = "e2e_traits"
path = "tests/e2e_traits.rs"

[[test]]
name = "e2e_type_definition"
path = "tests/e2e_type_definition.rs"

[[test]]
name = "e2e_watched_files"
path = "tests/e2e_watched_files.rs"

[[test]]
name = "e2e_workspace_diagnostics"
path = "tests/e2e_workspace_diagnostics.rs"

[[test]]
name = "e2e_workspace_folders"
path = "tests/e2e_workspace_folders.rs"

[[test]]
name = "e2e_workspace_scan"
path = "tests/e2e_workspace_scan.rs"

[[test]]
name = "feature_code_actions"
path = "tests/feature_code_actions.rs"

[[test]]
name = "feature_completion"
path = "tests/feature_completion.rs"

[[test]]
name = "feature_definition"
path = "tests/feature_definition.rs"

[[test]]
name = "feature_diagnostics"
path = "tests/feature_diagnostics.rs"

[[test]]
name = "feature_folding"
path = "tests/feature_folding.rs"

[[test]]
name = "feature_hierarchy"
path = "tests/feature_hierarchy.rs"

[[test]]
name = "feature_highlight"
path = "tests/feature_highlight.rs"

[[test]]
name = "feature_hover"
path = "tests/feature_hover.rs"

[[test]]
name = "feature_inlay_hints"
path = "tests/feature_inlay_hints.rs"

[[test]]
name = "feature_references"
path = "tests/feature_references.rs"

[[test]]
name = "feature_rename"
path = "tests/feature_rename.rs"

[[test]]
name = "feature_signature_help"
path = "tests/feature_signature_help.rs"

[[test]]
name = "feature_symbols"
path = "tests/feature_symbols.rs"

[[bench]]
name = "iai_critical"
path = "benches/iai_critical.rs"
harness = false

[[bench]]
name = "index"
path = "benches/index.rs"
harness = false

[[bench]]
name = "parse"
path = "benches/parse.rs"
harness = false

[[bench]]
name = "requests"
path = "benches/requests.rs"
harness = false

[[bench]]
name = "semantic"
path = "benches/semantic.rs"
harness = false

[dependencies.bincode]
version = "2"
features = ["serde"]

[dependencies.blake3]
version = "1"

[dependencies.bumpalo]
version = "3"
features = ["collections"]

[dependencies.dashmap]
version = "6"

[dependencies.dhat]
version = "0.3"
optional = true

[dependencies.mimalloc]
version = "0.1"
default-features = false

[dependencies.mir-analyzer]
version = "0.9.0"

[dependencies.mir-codebase]
version = "0.9.0"

[dependencies.mir-issues]
version = "0.9.0"

[dependencies.mir-types]
version = "0.9.0"

[dependencies.php-ast]
version = "0.9.2"

[dependencies.php-rs-parser]
version = "0.9.2"

[dependencies.rayon]
version = "1"

[dependencies.salsa]
version = "0.26"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.tokio]
version = "1"
features = ["full"]

[dependencies.tower-lsp]
version = "0.20"

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = [
    "env-filter",
    "json",
]

[dependencies.walkdir]
version = "2"

[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]

[dev-dependencies.expect-test]
version = "1"

[dev-dependencies.iai-callgrind]
version = "0.16"

[dev-dependencies.indexmap]
version = "2"

[dev-dependencies.tempfile]
version = "3"