Skip to content

Releases: VHDL-LS/rust_hdl

v0.85.0

16 May 06:13
Compare
Choose a tag to compare

What's Changed

  • Refactor map aspects
    • Types, subprograms and packages are now fully supported in entities.
    • Add checks for missing and duplicate generics in packages
  • Usage of the work library no longer cause circular dependency errors
  • Sensitivity List linter: Make heuristic for clocked process detection more general
  • Add baseline analysis and completions for simple external names
  • Fix a code panic when using non-utf8 characters near bitstrings

Full Changelog: v0.84.0...v0.85.0

v0.84.0

22 Mar 18:48
be4041a
Compare
Choose a tag to compare

What's Changed

  • Fix: complete nested records
  • Lint sensitivity lists
    • Check for missing and superfluous signals in sensitivity lists
  • Analyze mode view elements
  • Support excluding files in TOML by @Xcodo in #370
    • Enables libname.exclude = ["excluded/file.vhd"] to exclude file patterns
  • Conditionally enable tokenizing
    • Use the --vhdl_ls off and vhdl_ls on directives to conditionally disable / enable parsing

Full Changelog: v0.83.1...v0.84.0

v0.83.1

15 Dec 14:05
Compare
Choose a tag to compare

What's Changed

  • Enable command-line option for the libraries location as part of the vhdl_lang executable
  • Fix: discrete ranges can be used as choice statements

Full Changelog: v0.83.0...v0.83.1

v0.83.0

27 Aug 18:40
Compare
Choose a tag to compare

What's Changed

Bug Fixes

  • Fix no diagnostic being shown for binary expressions in certain circumstances
  • Enable completions from within subprograms
  • Disable completions after the ; token
  • Correctly parse and handle arrays of views
  • Correctly resolve selected names of types
  • Do not resolve symlinks for paths defined in the vhdl_ls.toml config
  • Allow underscores in decimal bit strings
  • Fix interface view package mismatch
  • Fix: signal attributes causes incorrect diagnostic when used in a sensitivity list
  • Replace copyright symbol to prevent errors using utf-8 coding by @qarlosalberto in #338

Formatter

This Release features an experimental VHDL formatter. In its current implementation, the formatter simply outputs a VHDL file in a single, pre-defined format. This is not intended to be used right now, but is rather the prerequisite for a fully featured VHDL formatter.

New Contributors

Full Changelog: v0.82.0...v0.83.0

v0.82.0

01 Jul 10:01
Compare
Choose a tag to compare

What's Changed

  • Add support for textDocument/documentHighlight request by @rapgenic in #308
  • Improve quality of workspace symbols
    rust_hdl now uses a fuzzy searcher to filter workspace symbols, enabling a better user experience
  • Improved completions:
    • Completions now also work in entities, packages and package bodies
    • General-purpose completions now suggest every visible symbol instead of only the immediate visible symbols
    • Completions for selected names (e.g., completions after . for records, packages, e.t.c.) and attribute names (e.g., completions after ') are now supported
    • Fix a bug where completions wouldn't show up for the work library
    • The parser was made more robust so that completions show up more regularly
    • Complete component instantiations. These work similar to entity instantiations
  • Performance
    • Avoid sending all diagnostics on every file change. This reduces the communication overhead with the client and improves the user experience.

New Contributors

Full Changelog: v0.81.0...v0.82.0

v0.81.0

25 May 20:28
Compare
Choose a tag to compare

What's Changed

  • Check raw entity IDs from an LSP client to prevent the client from crashing
  • Add source code location to all named entities
  • Consider /usr/local/lib when looking for the vhdl libraries
  • Refactor vhdl_lang executable to be used as tool within pipelines
    • Remove most of the arguments, such as perf or bench
    • Enable passing an optional path to the standard libraries
    • Exit with exit code '1' for any serious errors

v0.80.0

27 Apr 15:52
Compare
Choose a tag to compare

What's Changed

  • Add signal and port declarations to the list of completion items
  • Enable ignoring files that are not part of the project

VHDL 2019 only

  • Add initial support for view declaration
  • The second component keyword may be optional for component declarations
  • Allow trailing semicolons in interface lists

v0.79.0

09 Apr 20:13
Compare
Choose a tag to compare

What's Changed

  • Add Diagnostic Error Codes
  • Enable configurable severities
  • Add support for different VHDL standards

Full Changelog: v0.78.2...v0.79.0

v0.78.2

29 Mar 20:45
Compare
Choose a tag to compare

Change Variable substitution in windows from $NAME to the %NAME%

v0.78.1

06 Mar 20:08
Compare
Choose a tag to compare

Fix: Using the .all suffix is no longer considered an error for InterfacePackageInstances in use clauses