Skip to content

Releases: vlang/v-analyzer

v-analyzer development build

01 Jan 14:45
bbba20d
Compare
Choose a tag to compare
Pre-release

Generated on 2024-11-19 07:02:11 UTC from commit bbba20d.

0.0.5 - Official fifth public release

13 Nov 11:58
0.0.5
ef4243a
Compare
Choose a tag to compare

What is changed (compared to 0.0.4-beta.1)

New features and enhancements:

  • analyzer: add module index paths and wrapper module path as code block (#102)
  • analyzer: add pub access modifier to publicly used struct fields (#85)
  • analyzer: create vtmp directory for check-updates/up commands (#125)
  • analyzer: fix anonymous functions are self-invoking type mismatch (#48)
  • analyzer: fix build for paths with spaces (#83)
  • analyzer: Fix code_description (fixes zed-v) (#119)
  • analyzer: fix doc_comment_extractor (#50)
  • analyzer: fix vmodules_root check in setup_vpaths (#95)
  • analyzer: fix work progress shown as 0% when finishing indexing (#84)
  • analyzer: improve setup, extend client and log messages (#100)
  • analyzer: merge creation of vtmp directory for check-updates/up commands (#126)
  • analyzer: move const used to download install.vsh script (#127)
  • analyzer: reduce nesting in setup_toolchain
  • analyzer: rework path handling to simplify and reduce load (#86)
  • analyzer: simplify, improve completion context detection
  • analyzer: simplify, remove unnecessary abstraction
  • analyzer: update deprecated
  • analyzer: update deprecated unix time access (#99)
  • analyzer: use latest install script when updating (#81)
  • analyzer: support shebang syntax (#34)
  • analyzer: add inline struct field comments (#52)
  • analyzer: use build version aware caching (#57)
  • analyzer: update parser.c to align with the current development state (#13), fixes highlighting for code in between 2 block comments
  • build: follow a default directory structure for V projects (#25)
  • build: update install.vsh to make repeated usage of path expand fn obsolete (#24)
  • install: add debug and dev binaries install (#60)
  • install: update the git clone options for install.vsh
  • server: add range_clause highlight (#9)
  • tree_sitter: correctly recognize shebang (#26)
  • tree_sitter: support for mut is clause (#77)
  • tree_sitter: support short lambda (#56)
  • tree_sitter: detach shebang from comment (#32)

Fixes to existing features:

  • fix: building of IndexingRoot.v
  • fix: fix behaviour of pascal_case_to_snake_case after V commit 5329a0a67
  • fix: fix goto definition for field names. (#135)
  • fix: fix hanging on vfmt-ing large files on windows (#130)
  • fix: fix install.vsh
  • fix: fix module index by making sure to index also src/ and modules/ folders too (#138)
  • fix: fix raw string with \ (#64)
  • fix: fix wrong macos target in release CI (#139)
  • fix: move tools/project-checker.v to its corresponding directory
  • fix: remove obsolete v.mod file in metadata submod
  • fix: resolve compiler complaints (#27)
  • fix: restore .v extensions for metadata/stubs, add test (#74)
  • fix: src/analyzer/index/IndexingRoot.v
  • fix: tree-sitter bindings examples, extend workflow to run examples
  • fix: update npm generate script
  • fix: version regression after eae3f91, add test (#61)
  • tree_sitter: fix issuse bug (#42)
  • tree_sitter: fix parser error on unescaped dollar identifier in string literals, add test (#79)
  • tree_sitter: fix parsing of nested comments, extend tests (#76)
  • tree_sitter: fix qualified type (#8)
  • tree_sitter: rewrite comment grammar, detach line- and block comments (#71)
  • tree_sitter: add sum type to tree node (#87)

Documentation:

  • docs: update the instructions to use the platform independent v download command (#140)
  • docs: update README.md with more detailed instructions about how to clone the project locally, fix v check-md warnings
  • docs: fix for Neovim LSP/Mason (#122)
  • docs: fix typo in readme
  • docs: make submodule info in readme better visible and its commands easier to copy
  • docs: refine readme before a potential structural update
  • docs: update readme badges (#38)
  • docs: update README.md mason install instructions (from v-analyzer/v-analyzer#102)
  • docs: update workflow path in tree-sitter badge

Others:

  • chore: fix typos (#44)
  • chore: format all the files with the new fmt (#112)
  • chore: format all the files with the new vfmt (#117)
  • chore: format all the files with the new vfmt (#120)
  • chore: format all the files with the new vfmt (#121)
  • chore: run v fmt -w install.vsh
  • chore: remove obsolete .editorconfig file in subdir, format
  • chore: remove useless compiler_flag and copy .exe on windows (#108)
  • chore: run the linter CI for changes made to just .vsh files too
  • chore: updare editors/code dependencies (#33)
  • chore: update deprecated index_last to last_index (#72)
  • chore: update .gitattributes (#70)
  • chore: update tree-sitter dependencies (#31)
  • chore: use .vv extension for meta- and testdata files (#53)
  • ci: add concurrency config (#67)
  • ci: add linting and formatting automation to tree-sitter_v (#68)
  • ci: add retry to release/build-vscode (#54)
  • ci: add step to verify code formatting (#66)
  • ci: add .vsix artifacts to release asset uploads (#47)
  • ci: change actions/upload-artifact@v3 to actions/upload-artifact@v4 (#20)
  • ci: change vlang/[email protected] to vlang/[email protected] (#19)
  • ci: extend coverage in workflows
  • ci: extend release workflow; automate assets uploads on tag creation (#39)
  • ci: fix binary path in nightly ci (#36)
  • ci: make sure that install_ci.yml is run for every change.
  • ci: simplify, cover CI changes (#30)
  • ci: use dedicated lint workflow to verify formatting (#97)
  • refactor: decouple tree_sitter grammar and bindings (#37)
  • refactor: simplify doc_comment_extractor, reduce load (#51)
  • refactor: simplify grammar for in/!in and is/!is
  • refactor: simplify path handling, remove unused utils (#40)
  • refactor: store project metadata in metadata module (#59)
  • refactor: update project structure (#69)
  • tests: add test for the toolchain path setup (#96)
  • tests: fix paths in bindings test, add test to workflow
  • tests: fix analyzer test (#92)
  • tests: update testdata (#45)
  • tests: update tests to run with v test (#46)
  • tree_sitter: add .prettierignore (#89)
  • tree_sitter: improve clarity and quality of grammar (#78)
  • tree_sitter: improve selector expression grammar
  • tree_sitter: minimal cleanup, add optional ; support between statements in {} blocks (#88)
  • tree_sitter: Update dependencies (#18)
  • tree_sitter: update tree-sitter-cli version to 0.22.2 (#41)

New Contributors:

Full Changelog: https://github.com/vlang/v-analyzer/blob/main/CHANGELOG.md

Fourth public release 0.0.4-beta.1

09 Jan 12:15
2d5d12e
Compare
Choose a tag to compare

Note: this is still a beta version, do expect bugs, and report them in
our issues tracker .

Syntax enhancements & bug fixes:

∙ Update comment rule (#5).
∙ Fix string interpolation.
∙ Fix comment string parse error (v-analyzer/v-analyzer#85).
∙ Fix attribute shading (#2).
∙ Fix parameters.
∙ Fix the type descriptions in the primitives.v stub.
∙ Simplify handle_jsonrpc (v-analyzer/v-analyzer#86).

VSCode Extension:

∙ Show the full path to the found v-analyzer binary,
when the VSCode extension runs its bootstrap, to make
diagnosing problems easier.
∙ Update the vscode extension package to vscode-v-analyzer-0.0.4.vsix

CI enhancements:

∙ Use ubuntu-20.04 for building the executables, to be compatible with more Linux distros.
∙ Use v build.vsh debug for nightly releases, so the executables produce usable backtraces.
∙ Silence the nightly releases, simplify the .yml script that builds
them (v-analyzer/v-analyzer#83).

Others:

∙ Update README.md to also include instructions for the mason.nvim Neovim
package manager (v-analyzer/v-analyzer#90).
∙ Fix notices and warnings with latest V.
∙ Exclude .git/* and _test.v files from indexing by the language server,
see (v-analyzer/v-analyzer#89).
∙ Use a git submodule for https://github.com/tree-sitter/tree-sitter.git, see
(v-analyzer/v-analyzer#81).
∙ Use gcc for building on windows (v-analyzer/v-analyzer#87).
∙ Update build scripts (v-analyzer/v-analyzer#84).
∙ Fix version comparison in install.vsh .
∙ Migrate from https://github.com/v-analyzer/v-analyzer/ to https://github.com/vlang/v-analyzer/ .