Skip to content

Latest commit

 

History

History
298 lines (171 loc) · 11.5 KB

CHANGELOG.md

File metadata and controls

298 lines (171 loc) · 11.5 KB

Bash Language Server

4.5.0

  • Include 30 snippets for language constructs (e.g. if), builtins (e.g. test), expansions (e.g. [##]), and external programs (e.g. sed) #683

4.4.0

  • Improve source command parser and include diagnostics when parser fails #673
  • Fix onHover bug where sourced symbols on the same line as a reference would hide documentation #673

4.3.2

  • Improved CLI output #672

4.3.0

  • Add centralized and configurable logger that can be controlled using the BASH_IDE_LOG_LEVEL environment variable and workspace configuration. #669

4.2.5

  • Fix a critical bug causing memory leaks and high CPU usage for workspaces with many files #661

4.2.4

  • Increase ShellCheck execution delay to 500ms after typing ends.

4.2.3

  • Simpler debouncing for ShellCheck tasks where only the last request will return diagnostics #656

4.2.2

  • Reduce CPU usage by introduce a short execution delay and throttling for ShellCheck tasks #655

4.2.1

  • Add support for resolving loop variables #653

4.2.0

  • Improve heuristic for resolving variables by taking the scope into account, both locally and when sourcing files. #649
  • Support client responding with null for workspace/configuration. #650

4.1.3

  • Correctly parse environment variable BACKGROUND_ANALYSIS_MAX_FILES, although clients should migrate to the new configuration system (see info in the 4.0.1 release). #640

4.1.2

  • Correct ShellCheck source-path argument to support following sources based on the local folder of the file and the workspace root.

4.1.1

  • Background analysis: handle workspace root being a URL #625
  • Shell documentation: add --noprofile --norc to avoid config files breaking formatting #626

4.1.0

  • Symbols across files are now only included based on sourced files (using non dynamic statements like source file.sh or . ~/file.inc) instead of including symbols from all files in the workspace. We now also support jump-to-definition on the file path used in a source command. The new behavior can be disabled by turning on the includeAllWorkspaceSymbols configuration option. #244

4.0.1

  • Breaking: Drop support for Node 12, which reached its official end of life on April 30th 2022. Doing so enables new features. #584
  • ShellCheck: support code actions, remove duplicated error codes, add URLs and tags, support parsing dialects (sh, bash, dash, ksh) but still fallback to bash, enable configuring ShellCheck arguments using the shellcheckArguments configuration parameter (legacy environment variable: SHELLCHECK_ARGUMENTS)
  • Support workspace configuration instead of environment variables which enables updating configuration without reloading the server. We still support environment variables, but clients should migrate to the new workspace configuration. #599
  • Allow disabling background analysis by setting backgroundAnalysisMaxFiles: 0.

3.3.1

  • Fix missing documentation for some help pages #577

3.3.0

  • Performant globbing and background analysis that should fix the server crashing for large workspaces. We currently limit the files parsed to 500, but can be configured using the BACKGROUND_ANALYSIS_MAX_FILES environment variable #569
  • Enable ShellCheck integration to be disabled from the configuration. The default configuration used should be "shellcheck". #571
  • Support more bash shebangs when doing background analysis #568

3.2.3

  • Fix auto detection for path of shellcheck.exe on Windows #563

3.2.2

  • Get rid of deprecated dependencies for the explainshell integration #564

3.2.1

  • Fix shebang parser that ignores some bash files #560

3.2.0

  • Dependency upgrades
  • Default to shellcheck binary found on path #555

3.1.1

  • Dependency upgrades
  • Improve ShellCheck robustness for files without shebang #536

3.1.0

  • Bunch of dependency upgrades
  • Better completion kind #466

3.0.5

  • Fix Shellcheck issue when using vim-lsp #443

3.0.4

  • Fix Windows support for analyzer #433

3.0.3

  • Workaround for emscripten node 18 support #404

3.0.2

  • Fix analyzer not being called when getHighlightParsingError is off #396

3.0.1

  • Upgrade web-tree-sitter to fix node 18 issue #394

3.0.0

  • Linting based on shellcheck (#342)
  • BREAKING: Drop node 11 support (ton of dependencies upgraded).

2.1.0

  • Fix failing to get options if bash-completion<=2.9 (#340)
  • onHover now supports for multiline code comments (#348)
  • Dependency upgrades

2.0.0

  • BREAKING: Drop node 10 support
  • Upgrade dependencies
  • Adds support for completing command line arguments (#294)

1.17.0

  • Default configuration change: parsing errors are not highlighted as problems (as the grammar is buggy)

1.16.1

  • Fix brace expansion bug (#240)
  • Do not crash if bash is not installed (#242)

1.16.0

  • Improved completion handler for parameter expansions (#237)

1.15.0

  • Use comments above symbols for documentation (#234, #235)

1.14.0

  • onHover and onCompletion documentation improvements (#230)
  • support 0/1 as values for HIGHLIGHT_PARSING_ERRORS (#231)

1.13.1

1.13.0

  • Upgrade vscode-languageserver from 5 to 6 (#217)

1.12.0

  • Completion handler improvements: remove duplicates, include symbols from other files, ensure that programs found on the paths are actually executable (#215)

1.11.3

  • Recover from file reading errors (#211)

1.11.2

  • Fix invalid documentHighlight response when word cannot be found (#209)

1.11.1

  • Workspace symbols are resolved using fuzzy search (not just starting with it)

1.11.0

  • Support for workspace symbols (#195)

1.10.0

  • Improved completion handler and support auto-completion and documentation for bash reserved words (#192)
  • Upgrade tree-sitter

1.9.0

  • Skip analyzing files with a non-bash shebang

1.8.0

  • Extend file glob used for pre-analyzing files from **/*.sh to **/*@(.sh|.inc|.bash|.command)
  • Make file glob configurable with GLOB_PATTERN environment variable

1.7.0

  • Add PATH tilde expansion
  • Builtins and man pages formatting

1.6.1

  • Expose TypeScript typings from server
  • Update vscode-languageserver dependency

1.6.0

  • Switch to tree-sitter-wasm instead of tree-sitter (native bindings) to support node 12 and to ease installation (#147)

1.5.6

  • Fix crash when parsing directories with .sh suffix (#111)
  • Fix invalid LSP response (#110)

1.5.5

  • Upgrade tree-sitter from 0.13.5 to 0.13.22
  • Upgrade tree-sitter-bash from 0.13.3 to 0.13.7

1.5.4

  • Fix explain shell configuration issue (#80)

1.5.3

  • Support for showing warning for missing nodes
  • Upgrade tree-sitter-bash to 0.13.3

1.5.2

  • Upgrade tree-sitter to 0.13.5 and tree-sitter-bash to 0.13.2

1.5.1

  • Upgrade tree-sitter and tree-sitter-bash
  • Fixed build issue with 1.5.0

1.5.0

  • Upgrade tree-sitter and tree-sitter-bash

1.4.1

  • It's now possible to disable error reporting by setting the environment variable HIGHLIGHT_PARSING_ERRORS to false.

1.4.0

1.3.1

  • More reliable NPM command execution on Windows #40

1.3.0

  • Improved completions by adding support for

    • Suggestions based on the programs on your PATH #17
    • Suggestions based on the bash builtins #33
  • Implemented the onHover message that now shows documentation for programs and builtins when you hover your cursor over words in the document. #17 #33

  • Improved outline hierarchy #31

  • Upgraded tree-sitter bash and other libraries. #28

1.1.2

Update tree-sitter to 0.10.0 and tree-sitter-bash to 0.6.0. This improves the Bash parser. There are still known parsing issues. For more information following the progress on this issue over at tree-sitter/tree-sitter-bash#9