Skip to content

Releases: asyncswap/solidity-language-server

v0.1.32

13 Mar 05:20
v0.1.32
55d33fb

Choose a tag to compare

What's Changed

  • feat: import alias navigation and live buffer compilation by @mmsaki in #197
  • feat: goto-implementation falls back to goto-definition by @mmsaki in #200
  • fix: clear stale inlay hints after function deletion by @mmsaki in #202

Full Changelog: v0.1.31...v0.1.32

v0.1.31

10 Mar 19:33
v0.1.31
03ea309

Choose a tag to compare

Fixes

  • Precise fromRanges in call hierarchycallHierarchy/incomingCalls and callHierarchy/outgoingCalls now prefer member_location (the identifier-only span) over src (the full expression span) for MemberAccess nodes; e.g. slot0.protocolFee().getZeroForOneFee() produces fromRanges pointing at just protocolFee and getZeroForOneFee instead of the entire chain (#191)
  • Cross-build node ID mismatch in textDocument/implementation — the handler used the file build's target_id to look up base_function_implementation in the project build, which could resolve to a completely different function; now re-resolves the target by byte_to_id() per build (#193)

Docs

  • Neovim call hierarchy handler snippet — outgoing calls now use ctx.params.item.uri for the file path instead of vim.api.nvim_buf_get_name(ctx.bufnr) (which returns the wrong file when prepareCallHierarchy resolves to a different file); both handlers sort quickfix items by line then column

Tests

  • 622 tests, 0 failures, 0 warnings

Full Changelog: v0.1.30...v0.1.31

What's Changed

  • feat: textDocument/implementation, call hierarchy rewrite with cross-build identity verification by @mmsaki in #194

Full Changelog: v0.1.30...v0.1.31

v0.1.30

08 Mar 04:48
v0.1.30
8f3f0b6

Choose a tag to compare

What's Changed

  • fix: signed NodeId, incremental cache corruption, and stale diagnostics by @mmsaki in #183
  • Fix/node id signed integer by @mmsaki in #184
  • feat: project-wide PathInterner for canonical file IDs, fix stale-offset duplicate references by @mmsaki in #186
  • feat: qualifier-aware references, goto, and rename for qualified type paths by @mmsaki in #188
  • feat: remove evm.gasEstimates from solc — 78% compile speedup by @mmsaki in #190

Full Changelog: v0.1.29...v0.1.30

What's Changed

  • fix: signed NodeId, incremental cache corruption, and stale diagnostics by @mmsaki in #183
  • Fix/node id signed integer by @mmsaki in #184
  • feat: project-wide PathInterner for canonical file IDs, fix stale-offset duplicate references by @mmsaki in #186
  • feat: qualifier-aware references, goto, and rename for qualified type paths by @mmsaki in #188
  • feat: remove evm.gasEstimates from solc — 78% compile speedup by @mmsaki in #190

Full Changelog: v0.1.29...v0.1.30

v0.1.29

03 Mar 23:02
v0.1.29
7f45ac8

Choose a tag to compare

What's Changed

  • fix: did_save returns immediately, compile and cache work runs in background by @mmsaki in #171
  • feat: workspace/executeCommand — solidity.clearCache and solidity.reindex by @mmsaki in #175
  • feat: import path completions (relative paths + remappings) by @mmsaki in #173
  • fix: use project_cache_key() in execute_command and wake reindex worker by @mmsaki in #176
  • fix: tree-sitter import/assembly string completion guards by @mmsaki in #177
  • fix: guarantee full rebuild when reindex races with running did_save worker by @mmsaki in #178
  • feat: textDocument/codeAction — JSON-driven quickfix engine (issue #168) by @mmsaki in #180

Full Changelog: v0.1.28...v0.1.29

v0.1.28

03 Mar 04:20
v0.1.28
79d09c6

Choose a tag to compare

What's Changed

  • Improve incremental reindex safety with threshold gating and scoped cache merge by @mmsaki in #156
  • fix: resolve solc version from transitive import pragmas by @mmsaki in #162
  • fix: pull settings via workspace/configuration when initializationOptions absent by @mmsaki in #164
  • fix: error-driven retry for mixed-version project indexing by @mmsaki in #165
  • fix: correct textDocument/rename for aliased imports by @mmsaki in #167

Full Changelog: v0.1.26...v0.1.28

v0.1.27

26 Feb 04:47
v0.1.27
d6ed4b8

Choose a tag to compare

What's Changed

  • Add projectIndex.fullProjectScan setting (default false) by @mmsaki in #152
  • Add persistent reference cache with metrics, atomic writes, and single-flight sync by @mmsaki in #153
  • docs: add project cache lifecycle and single-flight sync behavior by @mmsaki in #154
  • docs: clean up README/blog and fix benchmark MDX parsing by @mmsaki in #155

Full Changelog: v0.1.26...v0.1.27

v0.1.26

25 Feb 04:22
v0.1.26
6da7588

Choose a tag to compare

Tests: 576 passed

What's Changed

  • feat: implement textDocument/foldingRange by @mmsaki in #134
  • feat: implement textDocument/documentHighlight by @mmsaki in #136
  • feat: implement textDocument/selectionRange by @mmsaki in #138
  • feat: full project indexing with async background index and progress reporting by @mmsaki in #140
  • feat: workspace/willRenameFiles + didRenameFiles cache-first hardening by @mmsaki in #142
  • feat: file operation settings, lifecycle fixes, and benchmark updates by @mmsaki in #145
  • completion: append global top-level symbols and auto-import edits by @mmsaki in #147
  • bench: add file-op lifecycle steps for shop and pool configs by @mmsaki in #148

Full Changelog: v0.1.25...v0.1.26

v0.1.25

23 Feb 19:09
v0.1.25
49aeefb

Choose a tag to compare

Tests: 468 passed

What's Changed

  • fix: show inlay hints for contract creation parameters by @mmsaki in #127
  • fix: redirect tracing logs to stderr in --stdio mode by @ClementWalter in #130
  • feat: typed solc_ast module with declaration extraction and memory optimization (#129) by @mmsaki in #131
  • chore: remove dead references functions, gate test-only structs, DHAT profiling by @mmsaki in #132

New Contributors

Full Changelog: v0.1.24...v0.1.25

v0.1.24

22 Feb 00:00
v0.1.24
9746134

Choose a tag to compare

Tests: 448 passed

What's Changed

Full Changelog: v0.1.23...v0.1.24
Tests: 463 passed

What's Changed

  • feat: LSP settings configuration by @mmsaki in #112
  • perf: reduce cold start from 14s to 2s by optimizing solc input by @mmsaki in #117
  • feat: project-wide source indexing for cross-file references by @mmsaki in #119
  • fix: commit solc fixture and remap all tests from forge to solc IDs by @mmsaki in #123
  • feat: benchmark config improvements and formatting snapshots by @mmsaki in #121
  • perf: documentLink returns only import links (83x faster) by @mmsaki in #122
  • fix: handle {value: ...} modifier calls in inlay hints and signature help by @mmsaki in #125

Full Changelog: v0.1.23...v0.1.24

v0.1.23

20 Feb 04:31
v0.1.23
ac18f3f

Choose a tag to compare

Tests: 442 passed

What's Changed

  • feat: opt-in gas estimates via @custom:lsp-enable gas-estimates by @mmsaki in #109
  • feat: textDocument/signatureHelp by @mmsaki in #110

Full Changelog: v0.1.22...v0.1.23
Tests: 442 passed

What's Changed

Full Changelog: v0.1.22...v0.1.23