Releases: usethesource/rascal-language-servers
Releases · usethesource/rascal-language-servers
v0.8.2
- Upgraded to rascal 0.33.3:
- Fixed a bug around ModuleParserStorage (see lang::rascal::grammar::storage::ModuleParserStorage)
- Bugfixes with the lib resolver
- New feature: IO::findResources that replaces some functionality that people used the lib:// scheme for.
v0.8.1
- Bugfix release for regression in typechecker introduced in v0.8.0
v0.8.0
0.8.0
- This release comes with rascal 0.32.0 which features:
- In ParseTree,
storeParsers
andloadParsers
offer a way to skip loading and executing a parser generator after deployment. Parsers can be stored in an opaque binary format that is very quickly loaded again and wrapped as a Rascal function with the same interface as what theparsers
function generates. - The interpreter uses
ModuleName.parsers
to parse modules with concrete syntax for every module fileModuleName.rsc
that is in the same jar file. - 8 to 12% improvement in generated parser efficiency
- several issues with respect to URI syntax resolved
- fixes for #1805, #1804 and #1793; related to the consistency of the documentation (broken links and broken code examples)
- M3 now has a default
implicitDeclarations
set which programming languages can fill with entities that are defined by language but do not have a source position anywhere (not even in the standard library). - M3 now has "specifications" (read test functions) that check what it means for a typical abstract syntax tree to be correct and how correct M3 relations relate to one another. For example, in an M3 model something should not be used if it is not declared, unless there are compilation errors.
- Project names in the
project://
scheme are now always to be lowercase letters, hyphens (-
) or underscores (_
), as in|project://my-project-name/src/main/rascal|
- In ParseTree,
- This release is based on rascal-maven-plugin 0.19.2 and rascal-tutor 0.11.4, which come with:
- API functions now have their signature first, before the other documentation sections are printed
- API modules have a link to their github source pages
- All packages must report their FUNDING sources now
- All packages must report their CITATION preferences now
- All packages must report their LICENSE now
- All packages automatically report their dependencies now as sourced from pom.xml
- All code examples, if tagged with
error
, must also throw an error. - Fixed all code examples that were falsely tagged with
error
- Finally, these are the changes local to the rascal-language-servers and rascal-lsp projects:
- PR #262 fixed three important issues with the LSP server interactions that had effect on the quality of the hover help and the references feature. In particular when more source files were involved (e.g. in the Rascal case) sometimes seemingly random results are shown, or none. This fix removes the root cause of the confusion and also rationalizes some code around the mapping from cursor locations to locations in the summaries.
- util::LanguageServer is now minimally documented and will appear on rascal-mpl.shortly in the Packages section under the
rascal-mpl
package. - Checks in RASCAL.MF files have been extended and improved.
- Loading of classes from dependent projects has improved in the VScode terminal and the language-parametrized LSP; there was a bug which caused arbitrary jar files to be loaded instead of the ones declared in the
pom.xml
. Usually the last dependency in the pom file "won". This also means thatlib://myDependency
would sometimes implicitly resolve tolib://myLaterDependency
and throw IO exceptions andexists
tests set tofalse
.
v0.7.0
- Fixes issues with IDEServices::registerDiagnostics where only the first error would be registered.
- Fixes issue with Rascal library loading where Rascal source files where loaded in a different order from the path than their accompanied .class files.
- util::Reflective::newRascalProject now guarantees syntax regex for project folders and project names.
- XML, HTML and JSON parsers now provide source origin location with every node.
- Improved support for Windows PATHs in dependency resolution code of Rascal
- Fixed UTF8 encoding issue in the Lucene library
- Documentation improvements
- Several minor issues.
- Added more validation features for RASCAL.MF files.
v0.6.1
- bumped rascal to 0.28.3 for performance fixes around maven and various bugfixes
- typechecking with latest 0.14.6 version of rascal-maven-plugin (and using linked rascal-library) to avoid outdated typepal files
- now allowing jdk 17 as runtime, we'll still install 11 as default, but jdk 17 seems to work.
- Bugfix for automatic jdk downloader on aarch64 osx (Apple M1 for example)
- RASCAL.MF files are now checked for common errors and incorrect configurations
v0.6.0
- bumped rascal to 0.28.0 for the addition of
vis::Graphs
and fixes inutil::Sampling
andvis::Charts
. - fixed issues with the
IDEServices::edit
function, in the VS Code terminal context and VS Code parameterized DSL LSP server context, with logical locations and locations with line/column information (both previously unsupported), for use in interactive visualizations (for example). - allow VS Code extensions to use rascal-vscode independently of installed rascal; this means DSL implementations can run their own native extension when they are finished being developed.
- as a result, rascal-vscode is now also an independent npm package.
v0.5.0
- Now using rascal 0.24.7
- Rascal DSLs can now use multiple evaluators if they want (see discussion in #181)
- Rascal DSLs do not get typepal on the PathConfig/evaluator search path by default. Only rascal & rascal-lsp.
unregisterLanguage
was added to clear all or parts of a language- Rascal REPLs get a progressbar while starting. This provides more feedback that something is happening, especially until the performance regression on windows is fixed.
v0.4.0 - moving to lsp 3.17 and improving performance and pom compatibility
- Now using rascal 0.24.6
- Better support pom.xml dependency resolution
- Rascal LSP commands can return values that are available in typescript
- Bugfix for handling def/ref/hover request in the "start" region of a rascal parse tree
- Moved to LSP 3.17 using the native inlayHint implementation
- Updated java & node dependencies to latest releases
- Improved performance of DSL init (specifically the time spent on generating parsers)
v0.2.1
package.json version removed head