1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Solidity LSP Benchmark Configuration
# Project root containing the Solidity files
project: v4-core
# Target file to benchmark (relative to project root)
file: src/libraries/Pool.sol
# Target position for position-based benchmarks
line: 102
col: 15
# Benchmark settings
iterations: 1
warmup: 1
timeout: 10 # seconds per request
index_timeout: 15 # seconds for server to index/warm up
output: benchmarks/v4-core # directory for JSON results
readme:
- benchmarks/v4-core/README.md
analysis:
- README.md
benchmarks:
- initialize
- textDocument/diagnostic
- textDocument/definition
- textDocument/declaration
- textDocument/hover
- textDocument/references
- textDocument/completion
- textDocument/rename
- textDocument/prepareRename
- textDocument/documentSymbol
- textDocument/documentLink
- textDocument/formatting
- workspace/symbol
# LSP servers to benchmark
servers:
- label: mmsaki
description: Solidity Language Server by mmsaki
link: https://github.com/mmsaki/solidity-language-server
cmd: solidity-language-server
args:
# - label: solc
# description: Official Solidity compiler LSP
# link: https://docs.soliditylang.org
# cmd: solc
# args: ["--lsp"]
- label: nomicfoundation
description: Hardhat/Nomic Foundation Solidity Language Server
link: https://github.com/NomicFoundation/hardhat-vscode
cmd: nomicfoundation-solidity-language-server
args:
# - label: juanfranblanco
# description: VSCode Solidity by Juan Blanco
# link: https://github.com/juanfranblanco/vscode-solidity
# cmd: vscode-solidity-server
# args: ["--stdio"]
# - label: qiuxiang
# description: Solidity Language Server by qiuxiang
# link: https://github.com/qiuxiang/solidity-ls
# cmd: solidity-ls
# args: ["--stdio"]