rascal
rascal copied to clipboard
getProjectPathConfig should read every configuration parameter from pom.xml
Is your feature request related to a problem? Please describe.
There is now an overlap between the passing of parameters from the maven plugin to the main functions of the compiler, the checker, the tutor and the executor. A part is implemented in getProjectPathConfig and a part is implemented in the maven plugin code. These parts both overlap and extend each other. It would be better if we re-align this "magic" in a single place.
Until recently, the pom.xml was only used to configure the compiler and we used the RASCAL.MF for the interpreter.
But the removal of the lib:// scheme and the introduction of the mvn:/// scheme and the merging of rascal-core and tutor back into the rascal project have resulted in a consolidation of getProjectPathConfig. It is now almost a single point of change for the configuration of Rascal projects. Almost...
Describe the solution you'd like
- [ ] add a "tutor" mode to getProjectPathConfig, next to "interpreter" and "compiler"
- [ ] add an "exec" mode to getProjectPathConfig, next to "interpreter" and "compiler" and "tutor"
- [ ] read source paths from pom.xml (next to deprecated parsing of RASCAL.MF)
- [ ] read configuration parameters from:
- [ ] generic rascal-maven-plugin
<configuration> - [ ] specific
goalexecutions, where the goals arecompile,tutor,consoleandexecwhich override the generic tags - [ ] computation of sensible defaults for things like
bin(outputDirectory), resources, srcs (src/main/rascal), which simulate the behavior of maven when it interprets the pom files.
- [ ] generic rascal-maven-plugin
- [ ] stop passing path config on the command line and replace with only the root
-projectfolder to pass into getProjectPathConfig. - [ ] start calling
getProjectPathConfig(root, mode=...)from themainfunctions of every tool: compile, check, console, tutor, exec