-
Notifications
You must be signed in to change notification settings - Fork 12
Description
Bug description
The incremental analysis gives an error when the Statix specification is for a language that uses yaml interpolation for its id
Versions
Eclipse: org.eclipse.platform.ide 4.16.0.I20200604-0540
Spoofax: org.metaborg.spoofax.eclipse 2.6.0.20220405-144549-master
System: Mac OS X x86_64 10.14.6
Statix setup: multi-file
Steps to reproduce the behavior
- Check out the PIE DSL language project in eclipse (metaborg/pie/lang/lang)
- Create a normal project and add
metaborg.yaml
with a compile dependency on PIE. - Create an example
test.pie
file in the normal project - Add
statix:
mode: incremental
in metaborg/pie>metaborg.yaml (before language.stratego
)
5. Restart eclipse and rebuild the PIE project
Observed behavior
Error:
18:00 | ERROR | .m.s.c.s.p.AResourcesPrimitive - Could not find lib/stxlibs
18:00 | ERROR | o.m.c.b.p.LanguagePathService - Getting source paths from provider org.metaborg.core.build.paths.DependencyPathProvider@22277482 failed unexpectedly, skipping this provider
org.metaborg.core.build.dependency.MissingDependencyException: Language for dependency org.metaborg:pie.lang:${pie.version} does not exist
See buildLog.txt for full log.
This always happens, immediately after building and also after every edit to the pie file (if the edit triggers an analysis).
The file is correctly analyzed though, the error does not seem to break anything.
This error does not occur in PIE files in the PIE project itself, only in the project that imports the PIE language.
Expected behavior
No error
Additional context
I have tried to create a minimal project, but I could not reproduce it.
This issue is made in the hope that you go "ah, should have used a different method to resolve those interpolations".