VPL Question icon

VPL Question

Maintained by Astor Bizard
VPL Questions are questions that can fit within a Moodle quiz. They are intended to create small to medium coding exercises, based on the Virtual Programming Lab plugin. They are designed to offer a simple interface for students, while keeping the power and versatility of Virtual Programming Labs.
Price option: Free

Supports Moodle 3.5-5.2 See all versions
Latest release: 1 month ago
Installations: 528
Downloads (last 90 days): 713

Frankenstyle name: qtype_vplquestion
Question types

Comments

Comments are no longer open for new posts. Existing comments remain available to read.

Hi @Prasanna Ghali,
This problem is known to occur if you are using a secure connection with your execution server. This issue is solved with VPL Questions 1.3.6.
If you are not using a secure connection, you may want to see exactly what happens on the VPL side. In that case, just try to:
• Save the question with "Validate" checked (to obtain the "An error occured during question grading (no grade obtained)." message).
• Then, immediately go to your VPL ; you should see a submission with your VPL Question files.
• Try to evaluate this submission and see what the evaluation result says.
Let me know if you continue to encounter any issue!
Best regards,
Astor
Newbie question here relating to VPL Quiz question setup. In the regular VPL, I provide a test driver main.c, vpl_evaluation.cases that tests the output of a function bar in file foo.c. This is the file that a student submits to complete the programming assignment.
In VPL Question Template, I write the following:
unsigned short bar(char *block, int offset) {
unsigned short p = 0;
{{ANSWER}}
return p;
}
In Teacher Correction, I provide:
p = *(unsigned short*)(offset+value);
In Execution Files, I have vpl_evaluate.cases, main.c, and foo.c. All of these works in the VPL plugin.
But, I get an "An error occured during question grading (no grade obtained)." Is this because I'm using VPL 3.3.7 and VPL Question 1.3.5. Or, is there something wrong in my interpretation of VPL Question set up? Any help would me much appreciated.
Hi @Gary Newport,
This issue seems to be related to the Virtual Programming Lab activity module (https://moodle.org/plugins/mod_vpl), not with VPL Questions.
Best regards,
Astor
I am trying to create a VPL activity after some time of not using it.
I have ensured I have the latest version 3.4.2 (2021033113) and we are running Moodle 3.9.2+ (Build: 20200918).
I have created the activity and gone to Test Activity > Edit.
It ALWAYS asks me to create a new file (even if this is not my first time on this page and I have created a new page previously) and once I create a new file (hello.c, hello.py or hello.py3) I cannot type anything?!
Any ideas why?
Hi Michael,
What does happen when you "Run" your VPL Question?
I added you to my contacts, if you want to DM me your execution server adress so I can try to reproduce.
Best regards,
Astor
Dear Astor,
I again double-checked, but this is unfortunately true.
My detailed configuration:
VPL: 3.4.1
VPL Question: 1.3.7
JailServer: 2.7.0
Server URL:
https://:443/thu_vpl
An this is what happens:
With port 80 opened:
Always use encrypted (wss) websocket protocol --> No grade obtained
Always use unencrypted (wss) websocket protocol --> Works!
With port 80 closed:
Always use encrypted (wss) websocket protocol --> No grade obtained
Always use unencrypted (wss) websocket protocol --> Timeout!
Looking forward to next steps! smile
The certificate of the web server is self-signed, maybe this can cause trouble?
Best regards,
Michael
Dear Michael,
1) Great for the good news!
2) That indeed is confusing. I have my mod_vpl configuration set to a server with https://, along with the protocol being set to "always use wss". My server has a closed port 80 and it works fine... I believe you did, but I'm just checking: did you test with this configuration?
I'm convinced we'll finally get this sorted out!
Best regards,
Astor
Dear Astor,
thank you for the update of the plugin!
I have good and bad news zwinkernd
1) Good news: your assumption that our issue is related to the secure web socket is correct: I can confirm that if we do not use secure web sockets or directly activate port 80 on our execution server, it works!
2) Bad news: I have updated the plugin on our system. But it still does only work if we open port 80 (!) on our execution server AND if we select ws in the plugin configuration, which currently confuses me. I still keep the server url using https and ssl port 443...
Best regards,
Michael
Hi everyone,
The compatibility issue with VPL 3.4.0+ should be fixed with VPL Questions version 1.3.7.
Please let me know if you encounter any problem with this new version.
Best regards,
Astor
Hi everyone,
This VPL Questions plugin, as of version 1.3.6, is still not compatible with last VPL version 3.4.1.
I am hoping to solve this issue before the end of the month.
Sorry for the inconvenience,
Best regards,
Astor
Hi @Alexandre Meslé and @Michael Munz,
I released a new version of the plugin, which should solve your problem!
The VPL Questions now can correctly connect to the execution server via secure websocket, if this is what is specified in the VPL plugin configuration.
Please let me know if any problem persists!
Best regards,
Astor
Hi,
Currently, VPL Questions are using the default port to communicate with the execution server (instead of the secure port if specified in the VPL configuration).
This issue should be solved in the next patch.
If this is actually the cause of your problems, that would actually be wonderful! All could be kinda sorted out by itself tongueout
I will let you know when this is patched!
Regards,
Astor
Hi,
@Alexandre: this seems to be very related to my problem: a pre-check works, but the final check does not work ("no grade obtained"). The same holds for a validation in the question configuration: this also does not work.
When I'm using the jail server on the same machine as the moodle server is running, it works! When I am using a dedicated jail server (which only has a self-signed certificated currently), the validation and check does not work! I don't know if it is related to the self-signed certificate (I have checked the option that self-signed certs can be used) or if it is related to the different networks - but this seems to correlate with the problem Alexandre is facing.
Best regards,
Michael
Hey !
I have some news !
When I go to the settings and use the default ulpgc VPL server, it works !!!!
So the pb is relative to my docker service. Since I have used a dockerhub image, it will be very hard to debug.
I have tried to ping my vpl container from my moodle container and it works, so it does not seem to be a network issue... Unless it is a port issue : do you use the 80/443 when requesting the VPL server ?
The dockerhub image is quite old, I had to update some softwares by myself, it also could be related to the issue...
Before I keep on investigating, has anyone here made this plugin work with docker ? (Hum... I am also using traefik as a reverse proxy, maybe is this related to the problem).
If you want to reproduce the bug I can PM you my vpl server url (you will have to add me to your contacts).
When I have some time, I try to build a vpl container from scratch, maybe will it work better.
Best Regards Astor, and thanks for your involvment,
Alexandre.
Hi @Alexandre Meslé,
Yes, the process of pre-check and check is not exactly the same, as the check is done entirely on server-side.
I never thought that it might be the problem, but it could...
The main problem I have solving this issue is that I am no longer able to reproduce the bug on my side, as everything works fine.
If you could trace all messages sent to and from the execution server (on an execution that leads to the "no grade obtained" problem), that may be of great help.
Thanks in advance!
Astor