zls 0.11.0
Thanks @Techatrix for writing these release notes!
Feature improvements:
- hover improvements (#1269) (#1281) (#1282) (#1294) (#1303) (#1308) (#1320)
- struct init field completion (#1075) (#1090) (#1115) (#1116) (#1275) (#1298) (#1307)
- completion on error and enums (#887) (#1233) (#1270) (#1302)
- provide more semantic token information (#1057) (#1103)
- implement cInclude completions & goto definition and hover (#970) (#972)
- keyword completion and updated snippets (#763) (#767) (#769) (#1095)
New capabilities:
Analysis:
- experimental comptime interpreter (#724)
- branching type resolution (#1031)
- add anytype resolution based on call references (#1067)
- resolve type of simple labeled block (#1262)
- expand var decl alias resolution (#1273)
- resolve std.ArrayList(T).Slice (#1373)
- resolve type of loop expressions (#1310)
- resolve types of slice.len, slice.ptr, and tuple fields (#1315)
Performance:
- optimize analysis backend (#1062)
- use @silversquirl's binned allocator (#1134)
- multithreaded job processing (#1311)
- optimize inlay hints. (#926) (#948) (#954)
- optimize document symbols (#1050)
Config:
- make argument placeholders optional (#1317)
- make semantic token configuration an enum (#1064)
- enable all capabilities by default (#877)
Behind the scenes:
- switch to diff-match-patch (#982)
- add a replay feature to zls (#857)
- code formatting does not depend on zig executable. (#755)
- update zig submodules to new builtin dependency system (#1017)
- disable and then reenable cimport resolution (#1091) (#1136)
- use zig-lsp-codegen (#850)
- transition from tres to std.json (#1321)