Spoofax 2.5.21 (23-07-2024)¶
Spoofax 2.5.21 updates multiple dependencies, fixes a few bugs, and introduces a new required field in the metaborg.yaml
file. Notably, guice
is now updated from version 5.1.0 to 7.0.0. This is the last release that is compatible with 5.1.0.
See the corresponding migration guide for migrating from Spoofax 2.5.20 (or below) to Spoofax 2.5.21.
Fixes¶
Statix¶
RuleUtil.inline
now inserts equalities for ascribed values- Rule names are now unique across files
- List origins are now tracked, fixing spurious failure in NaBL2 solver
Changes¶
- The value of
metaborgVersion
inmetaborg.yaml
is no longer hardcoded and must be specified explicitly in themetaborg.yaml
file of a language project. See the migration guide.
Dependencies¶
- Introduced
util-vfs2
and moved the parts oforg.metaborg.util
that depend onorg.apache.commons:commons-vfs2
to there. This makes it possible for parts of Spoofax that do not use vfs2 to not depend on vfs2. - Loading a parse table and using it to parse a file (example in
spoofax2-lang-example:java/parse
) no longer depends oncommons-io:commons-io
. The only third-party dependencies are nowjakarta.annotation:jakarta.annotation-api
,org.slf4j:slf4j-api
andio.usethesource:capsule
. com.virtlink.commons:commons-configuration2-jackson1
: 1.3.1 -> 1.3.5com.fasterxml.jackson.core:jackson-core
: 2.14.0 -> 2.17.1com.fasterxml.jackson.core:jackson-databind
: 2.14.0 -> 2.17.1com.fasterxml.jackson.core:jackson-annotations
: 2.14.0 -> 2.17.1com.fasterxml.jackson.dataformat:jackson-dataformat-yaml
: 2.14.0 -> 2.17.1org.immutables:value
: 2.8.8 -> 2.10.1com.google.inject:guice
: 5.1.0 -> 7.0.0com.google.inject.extensions:guice-multibindings
: 5.1.0 -> 7.0.0com.google.inject.extensions:guice-assistedinject
: 5.1.0 -> 7.0.0
Downloads¶
Eclipse plugin¶
Premade Eclipse installations¶
With embedded JRE:
- macOS 64-bit with embedded JVM
- Linux 64-bit with embedded JVM
- Windows 64-bit with embedded JVM
- Windows 32-bit with embedded JVM
Without embedded JRE:
Update site¶
- Eclipse update site:
https://artifacts.metaborg.org/content/unzip/releases-unzipped/org/metaborg/org.metaborg.spoofax.eclipse.updatesite/2.5.21/org.metaborg.spoofax.eclipse.updatesite-2.5.21-assembly.zip-unzip/
- Eclipse update site archive
IntelliJ plugin¶
- IntelliJ update site:
https://artifacts.metaborg.org/service/local/artifact/maven/redirect?r=releases&g=org.metaborg&a=org.metaborg.intellij.dist&p=zip&v=2.5.21
- IntelliJ update site archive
Command-line utilities¶
Core API¶
- Spoofax Core Uber JAR
- Spoofax Core uber Maven artifact:
org.metaborg:org.metaborg.spoofax.core.uber:2.5.21
StrategoXT¶
Maven artifacts¶
Maven artifacts can be found on our artifact server.
The Maven version used for this release is 2.5.21
.
Last update:
July 30, 2024
Created: July 30, 2024
Created: July 30, 2024