Skip to content

2024-12-09

Latest
Compare
Choose a tag to compare
@robertoaloi robertoaloi released this 09 Dec 15:30
· 7 commits to main since this release

Highlights

New Features

  • Auto-completion for maps
  • Add support for documenting types via -doc attribute
  • Allow configuring native diagnostics to be on-save only
  • Foldable ranges for -moduledoc and -doc attributes

Bug Fixes and Reliability Improvements

  • More reliable outline and breadcrumbs
  • Smarter unused-include auto-fix
  • More accurate Buck2 project model
  • Newer eqWAlizer
  • Escape runnable code lenses
  • Prevent completion within comments
  • Restrict ranges for type calls to name only when possible
  • Flush diagnostics when a document changes

CLI

  • Add -bail-on-error flag for eqWAlizer commands
  • Enable JSON output for elp eqwalize

Website

  • Upgrade ELP website to Docusaurus 3

Full Changelog

b5ae5c3 Regenerate yarn.lock file (Roberto Aloi)
6cff2fc Bump extension to 0.32.0 for release (Roberto Aloi)
5d4e199 Back out "Check for at least OTP 27 when running elp CLI commands that need it" (Roberto Aloi)
204f392 Upgrade to Docusaurus 3.6.3 (Roberto Aloi)
7900c31 Add --bail-on-error to EqWAlizer commands (Roberto Aloi)
c1b794b Infer required keys in return of maps:with when open shape has dynamic() keys (Rui Gonçalves)
1d27f9f Document ignore by name (Roberto Aloi)
bdb8fc9 Reliably process 'textDocument/documentSymbol' on startup (Alan Zimmerman)
a26383c Add support for type docs (Roberto Aloi)
08dd772 Auto-completion for maps (Roberto Aloi)
85d01ae Check for at least OTP 27 when running elp CLI commands that need it (Alan Zimmerman)
30bcc2d Improve accuracy of maps:with eqWAlizer return type (Rui Gonçalves)
65fcf81 Improve the progress reporting when loading (Alan Zimmerman)
7603e33 Add telemetry for go to def destination (Alan Zimmerman)
30cc5da Ad-hoc support for simple map comprehensions (Victor Lanvin)
e704b33 Map comprehension snapshot test (Victor Lanvin)
56815a3 Cleanup and unify map boilerplate (Victor Lanvin)
c716b66 Reuse helper for adjacent newline in unused include quick-fix (Roberto Aloi)
54153e2 36/n: use FileId to access AppData for include_lib (Alan Zimmerman)
d05dbe6 35/n: set app_data_id for all files in IDE mode (Alan Zimmerman)
74cb655 34/n: Provide --buck-bxl CLI arg for elp server (Alan Zimmerman)
7d40d15 33/n: BE: using chunking in loader config for better progress reporting (Alan Zimmerman)
5c4784d 32/n: BE: break out loader_config function (Alan Zimmerman)
dbfdebd 31/n: use abs_src_dirs for buck, final CLI accuracy (Alan Zimmerman)
7ed283f 30/n: Only load prelude targets that are used (Alan Zimmerman)
90724cb 29/n: Add BuckTarget origin field (Alan Zimmerman)
6225dec 28/n: break out make_buck_target (Alan Zimmerman)
e809e16 27/n: Update test results for elp.bxl change (Alan Zimmerman)
ee15e06 Reuse logic for deletion (Roberto Aloi)
342e874 Move parse out of for loop (Roberto Aloi)
3bbe6a4 Extract helpers for adjacent newline (Roberto Aloi)
1cacc16 Fix typo s/rage/range (Roberto Aloi)
ffaffaa 24/n: Add extra field to BuckConfig for deps_targets (Alan Zimmerman)
c4f0c34 22/n: elp.bxl: include prelude in targets to be searched (Alan Zimmerman)
73085ae 21/n: buck:Add included file to applicable files too (Alan Zimmerman)
d94f8b3 20/n: buck:populate extra_src_dirs (Alan Zimmerman)
17c4cd1 19/n: buck: always load all applicable files (Alan Zimmerman)
47ce19b 18/n: buck: load all local include dirs for a target (Alan Zimmerman)
8a84199 17/n: buck: add target local dirs for include resolution (Alan Zimmerman)
8894f81 16/n: process included_apps for include path (Alan Zimmerman)
908ac62 15/n: compute module index based on file_id AppData (Alan Zimmerman)
a4884fc 14/n add AppData.is_test_target, for buck test target apps (Alan Zimmerman)
5130229 13:n: Create a map of FileId to AppDataId (Alan Zimmerman)
9729015 12/n: Add ApplicableFiles to ProjectAppData (Alan Zimmerman)
de31f7e 11/n: include test targets in project model (Alan Zimmerman)
91b8b15 10/n: put src path into includes if there is a .hrl there (Alan Zimmerman)
322d322 Fix oncall s/whatsapp_developer_tools/vscode_erlang/g (Roberto Aloi)
2d4aa02 Escape runnable code lenses (Roberto Aloi)
5940cc8 If --include-edoc-diagnostics is specified, report EDoc diagnostics without requiring explicit listing (Roberto Aloi)
2541fd6 9/n: Find app root based on BuckTarget info only (Alan Zimmerman)
0decf14 8/n: Remove duplicates in Vfs loader config (Alan Zimmerman)
bdec080 7/n: Start doing new gen ProjectAppData (Alan Zimmerman)
e0fbea6 Add error index page for L1500 (Roberto Aloi)
aa2f01f Add OTP 27 Pipeline (Roberto Aloi)
60d05a1 Fix tests for pre-otp-27 versions (Roberto Aloi)
a9170fd Prevent completion within comments (#66) (Michael Davis)
c187851 6/n: Add ProjectAppData.applicable_files field (Alan Zimmerman)
4978fef 5/n: read apps and deps from bxl (Alan Zimmerman)
499dee9 4/n do not add global includes to buck if getting includes via bxl (Alan Zimmerman)
7c769a5 3/n: Update elp.bxl to improve dependency information (Alan Zimmerman)
b226319 2/n Remove un-necessary buck query config parameters (Alan Zimmerman)
945ef75 1/n: Split out buck processing for old and new (Alan Zimmerman)
943d3c7 BE: Add OTP version to the initial LSP server pop-up message (Alan Zimmerman)
e8d59f8 Restrict ranges for type calls to name only when possible (Roberto Aloi)
9173af2 Bump vulnerable cross-spawn dependency (Roberto Aloi)
125337d Remove obsolete activation event for VS Code extension (Roberto Aloi)
f812526 Read string representation of Eqwalizer diagnostic codes (Alan Zimmerman)
3019783 Add testcases for parametrized types (Roberto Aloi)
bfb0d09 Upgrade to Docusaurus 3.6.2 (Roberto Aloi)
8a1900c Honour disabled diagnostics when reporting EDoc diagnostics (Roberto Aloi)
1ea7460 Add extra debugging info when the eqwalizer command spawn fails (Alan Zimmerman)
964af91 Optionally dump stats on elp parse-all (Alan Zimmerman)
7b457b2 BE: improve 'elp parse-all' progress bar total (Alan Zimmerman)
a7aad28 Include source and root dirs in generated project model includes (#64) (Michael Davis)
c610e66 BE: be explicit about requesting eqwalizer and erlang service diagnostics in IDE (Alan Zimmerman)
76b2867 Honour .elp_lint.toml disabled diagnostics for erlc in IDE (Alan Zimmerman)
6a522eb Calculate IDE diagnostics config in one place only (Alan Zimmerman)
2caafa9 Fix github CI (Alan Zimmerman)
7dc5abb Upgrade cross-spawn dependency (Alan Zimmerman)
a6b5b95 Tracking down "stuck" diagnostics (Alan Zimmerman)
168d8e6 Allow configuring native diagnostics to be on-save only (Alan Zimmerman)
a7fce3a Flush diagnostics when a document changes (Alan Zimmerman)
a2e373c enable JSON output for elp eqwalize (Alan Zimmerman)
0bca86f tests for known problems (Ilya Klyuchnikov)
c3393f8 merge tests (Ilya Klyuchnikov)
d51514d Add occurrence typing to maps:fold (Victor Lanvin)
bf535c4 maps:fold snapshot tests with occurrence typing (Victor Lanvin)
114df71 Custom type checking of maps:intersect (Victor Lanvin)
1c35b4d maps:intersect snapshot tests (Victor Lanvin)
dcf2cc0 Use Variable for base of dynamic() type semantic highlighting (Alan Zimmerman)
eb777d5 BE: switch include processing to use FileId not SourceRootId (Alan Zimmerman)
31a4b8c Remove no-longer-used config option (Alan Zimmerman)
9e43b09 Remove --buck-deps-includes command line arg (Alan Zimmerman)
7770d92 Refactor folding (Roberto Aloi)
25b7de3 Foldable ranges for (module)doc attributes (Roberto Aloi)