usethesource / rascal

The implementation of the Rascal meta-programming language (including interpreter, type checker, parser generator, compiler and JVM based run-time system)
http://www.rascal-mpl.org
Other
408 stars 77 forks source link

Rascal srcs path changes resulting in unfindable modules #2065

Open leegbestand opened 4 weeks ago

leegbestand commented 4 weeks ago

Describe the bug

In some cases, the |srcs| component in the pathConfig of a project/REPL changes to just src/ instead of src/main/rascal, which is the |srcs| value when a new Rascal project is created with createNewRascalProject.
As a result of this change, loading the REPL and importing a module results in an error that it could not find the module in the search path. This has been the only change I have found between the two projects so far.

Note that the |project://| location doesn't seem to have changed, since I can still access my current project using that location.

There is probably some inconsistency caused somehow, but I am unable to figure out why. I also haven't found a similar issue/thread somewhere.

To Reproduce I have not yet identified what causes this, so I have no way to reproduce this.

Expected behavior Modules should be found.

Stack traces

pathConfig(
  ignores=[],
  javaCompilerPath=[
    |file:///home/df/.vscode/extensions/usethesource.rascalmpl-0.11.2/assets/jars/rascal-lsp.jar|,
    |file:///home/df/.vscode/extensions/usethesource.rascalmpl-0.11.2/assets/jars/rascal.jar|
  ],
  bin=|target:///|,
  classloaders=[
    |target:///|,
    |system:///|
  ],
  libs=[|lib://rascal|],
  srcs=[|file:///home/df/Projects/Teaching/SoftwareEvolution/rascal-intro/src|])INFO: resolved |lib://rascal| at |jar+file:///home/df/.vscode/extensions/usethesource.rascalmpl-0.11.2/assets/jars/rascal.jar!/|
rascal>import Main;
|prompt:///|(0,12,<1,0>,<1,12>):Could not load Main due to: Could not import module Main: can not find in search path
Advice: |https://www.rascal-mpl.org/docs/Rascal/Errors/CompileTimeErrors/ModuleImport| at |prompt:///|(0,12,<1,0>,<1,12>)

Desktop (please complete the following information):

Additional context It seems defining new modules also causes an error inside vscode with the message module name is not consistent with its file location Moving the module up into the src/ directory and not src/rascal/main fixes the issue.

The RASCAL.MF file is as follows:

Manifest-Version: 0.0.1
Project-Name: rascal-intro
Source: src/main/rascal
Require-Libraries: