Releases: jcrodriguez-dis/moodle-mod_vpl
VPL 3.3.4
This is a bug fix release of VPL 3.3.3.
The fixes are:
- The full regular screen mode has been update to the new standard Boost theme. The new code has been tested with the Boost, Clear, More and Essential themes.
- Fixes error in background colour of similarity report
- Tries to reduce terminal high load problem and blinking accuracy
- Fixes a bug when resetting VPL instances
- Adds check of directory and file creation. Now the plugin throws an exception if a file or directory cannot be created.
- Adds php file extension to similarity checks. The plugin uses the cpp parser to checks php. This is not a full solution but is better than nothing.
- The default running and debugging scripts of the required programming languages has been fixes to select properly the first source file of the submission.
Known issues
- Has been found a problem with the change of the grade hide/show state. If you hide the grade in the gradebook and then unhide the grade in the VPL plugin the activity grade state is changed to shown but the state for every student grade is still hidden. As a workaround you can hide/show grade at the gradebook or at the activity setting, do not mix this setting.
- Sometimes the terminal breaks the connection if receive a huge number of newlines, e.g. running a program with an infinite loop printing newlines.
- There are some minor problems showing source code files using the Essential theme. These problems are about aesthetic decoration and do not reduce the functionalities.
Release of VPL3.33
This is a bug fix release of VPL3.3.2.
The fixes are:
- The evaluation process now asks for accepting certificates if connection fails.
- Has been fixes a problem with grade form. This problem that appear in some theme and browser combination lead to a continuous increase of width of the text area field.
- Has been fixed a bug in the grade setting update. The problem was that VPL does not changed the grade hide/show state. As a workaround the changes would to be done in the gradebook.
Release of VPL 3.3
The development team of Virtual Programming Laboratory (VPL) for Moodle presents the 3.3 version of this plugin.
New or improved features in VPL 3.3
Syntax highlighter
The server based syntax highlighter has been removed, now all syntax highlighting is done in the browser using the Ace editor. This change extends to more than 50 the number of programming languages supported. This improve also will reduce the CPU load on the server. It has been also defined a syntax highlighter for the test cases definition file.
Code editor
The editor has been updated using the last Ace code. This update will allow to use basic autocompleting in all languages, snipes in many and syntax checking in a few as PHP, JavaScript and CSS.
- Now it’s possible to select the editor theme in the plugin setting.
- The menu has now a button to unfold and fold less used options.
- Now it is possible to delete multiply files using the new multi-delete button.
- Now you can select the code font size. The size selected will be saved as user preference.
- The activity description is now shown in a “Description” tab. The student can read the activity description while write code in one window.
- The countdown timer can’t be hidden when the time left is less than five minutes.
- The evaluate button now gives information about the number of automatic evaluations done and the grade reduction definition.
Default evaluation program
The default evaluation program has been improved trying to accomplish the common requests of the users of VPL. The new instructions are:
- Fail message*. This instruction set the text to show when the case fails. The input and output information is omitted.
- Program to run: This instruction allows to replace, for this case, the student’ program for other one. For example, you can use this instruction to run static/dynamic analysis of the student code.
- Program arguments. This instruction allows to send information to the student program (or “program to run”) as command line arguments. Notice that this instruction can be used with the input instruction.
- Expected exit code. This instruction set the expected exit code of the program case execution. The test case is passed if the exit code match. Notice that the test case can be passed also if an output match.
Reducing grading marks by the number of automatic evaluations
The grade system has been enhanced with a penalization by automatic evaluation requests. A number of free evaluations can be also configured. Once the student uses the free evaluations the grade system will start to reduce its current mark. The reduction value can be fixed number or a percent. Every new evaluation will apply a new reduction to the current grade. These reductions are applied to automatic and manual evaluation.
Group/team VPL activities redesigned
The pre v 3.3 design of team’s activities has different drawback that need to be resolved. The main problem is that if you change a student group after submissions the submissions may be moved to other group with the student. In the new design the submissions belong to the group and not to a student. Now it is safe to remove or add students to a group at any moment, the submissions will remain in the group. The grade is assigned to the members of the group at the moment of been graded.
Check execution servers
Check execution servers now show the actual servers including the locals and based on ones. The report now also shows the list of current process running in the course.
Diff files
The diff files code has been rewrite to support the Ace editor as the way to show files side by side.
Download submissions
The “download submissions” button has been moved to the “submission llist” report. It has been added a new button to download all submissions including old versions. The zip file format has change to give more information including: full name of student, time of submission and evaluation details.
Reducing size of space used by submission
Due to how the submitted files are managed: created or deleted but not modified. This version includes the reuse of files of previous submission. This is achieved by reusing (linking) files of previous submission with same contents as new ones.
Using GUI programs
If you are planning to use languages with GUI capabilities as Java, C#, PHP, etc. it is highly recommended to use vncaccel to reduce the start time of the programs (see release of execution server 2.2.2)
Testing VPL
VPL is now tested using travis-ci. The tests include PHP Lint, PHP Mess Detector, Moodle Code Checker, CSS Lint, JSHint, PHPUnit tests and specific tests for the default Student's program tester. These tests alone do not correct bugs in the code, but are a first step to detect them.
Translations
Has been added the Brazilian translation thanks to Gabriel P. Silva UFRJ
Bug fixes
- Adds timemodified field for compatibility with Moodle.
- Fixes drop and paste problems.
- Uses own copy of Jquery and Jquery-UI, this removes version problems.
- Fixes problems reordering files.
- Removes for students view the hints of grade reduction at the end of titles line of grader comments. The students could see hints in HTML before it is processed by JavaScript.
- Fixes problem that avoid save new submissions when the name of requested files is changed.
- Has been modified the table vpl_jailservers to remove the key of the server URL. This key with a field of 255 chars generate an error than abort the installation of VPL due to problems for reaching the limits of key size in MySQL some some char sets.
Updating VPL
If VPL is updated it is highly recommended to clean the browser's cache. The cache can mix JavaScript files from the previous version and generate errors for a while.
IMPORTANT NOTE!: If you update or restore activities to VPL 3.3 or higher from previous version and include teams’ activities whit submissions, you need to go to the list of “Virtual Programming Lab” activities and click on the “Check all” button (at the bottom of the report). This process will assign groups to the submissions.
This is a bug fixes release of the v3.2.3
v3.2.4 Uses a full version of JQuery-UI
V3.2.3 Bug fixes release
This is a bug fixes release of the v3.2.2
V3.2.1
This is a bug fix release of the v3.2.
- Fixes a bug that allow a cheater to craft a generic program that read the test cases
definition and gives the properly output to tests. The solution was
to remove the test cases definition after been read by the test program. - Fixes error that let external paste when is setted to be unallowed.
Final 3.2
Release of VPL 3.2
This is the final release of the new VPL 3.2 version.
New from the VPL 3.1 serie
- Supports of binary files
- Improved the default scripts to run, debug and evaluate programming languages
- Added script to check all supported languages (using ".all" extension)
- Selection of ws or wss protocol has been moved to the client side
- New edit features
- Supports uploading by dropping files
- Supports of keyboard shortcuts in editor
- Added panel of list of files
- List of keyboard shortcuts in "About"
- Supports of decompression of zip files
- Shows countdown of time remaining
- Shows image files
- Removed the size limits of VNC client
- Added support for tablets and mobiles in editor and console allowing the use of virtual keyboard (keyboard in screen)
- Added support for clipboard in text console allowing copy and paste.
- Added support for clipboard in VNC client. Available if using TigerVNC server.
- Added support for comments in submissions
- Used new version of ACE editor, including auto-completion feature.
- Tested in Moodle 3.2 and Boost theme
v3.2-beta1
Release of VPL 3.2-beta1
This is the beta release of the new VPL 3.2 version is a bug fix version of 3.2beta. Please report any bug you found.
New from the VPL 3.1 serie
- Supports of binary files
- Improved the default scripts to run, debug and evaluate
- Added script to check all supported languages (using ".all" extension)
- Selection of ws or wss protocol has been moved to the client side
- New edit features
- Supports uploading by dropping files
- Supports of keyboard shortcuts in editor
- Added panel of list of files
- List of keyboard shortcuts in "About"
- Supports of decompression of zip files
- Shows the time remaining
- Shows image files
- Removed the size limits of VNC client
- Added support for tablets and mobiles in editor and console allowing the use of virtual keyboard (keyboard in screen)
- Added support for clipboard in text console allowing copy and paste.
- Added support for clipboard in VNC client. Available if using TigerVNC server.
- Added support for comments in submissions
- Used new version of ACE editor, including auto-completion feature.
v3.2-beta
Release of VPL 3.2-beta
This is the beta release of the new VPL 3.2 version. Please report any bug you found.
New from the VPL 3.1 serie
- Supports of binary files
- Improved the default scripts to run, debug and evaluate
- Added script to check all supported languages (using ".all" extension)
- Selection of ws or wss protocol has been moved to the client side
- New edit features
- Supports uploading by dropping files
- Supports of keyboard shortcuts in editor
- Added panel of list of files
- List of keyboard shortcuts in "About"
- Supports of decompression of zip files
- Shows the time remaining
- Shows image files
- Removed the size limits of VNC client
- Added support for tablets and mobiles in editor and console allowing the use of virtual keyboard (keyboard in screen)
- Added support for clipboard in text console allowing copy and paste.
- Added support for clipboard in VNC client. Available if using TigerVNC server.
- Added support for comments in submissions
- Used new version of ACE editor, including auto-completion feature.
V3.1.5
Virtual Programming Laboratory (VPL) for Moodle
This is a bug fix release with few small improvements. This code has been tested in Moodle 3.1 and PHP7.
Changes from VPL 3.1.4
- Adds MOODLE_USER_ID and MOODLE_USER_NAME environment variables in the execution process. You must execute vpl_enviroment.sh to get this variables.
- Updates the C# default script using "mcs" command instead of "gmcs" (deprecated)
- Removes unneeded space round the editor box.
- Adds a link to the user profile from the user name.
- Adds user based similarity process
- Improve the similarity process
- Fixes error when using ZIP files as source in diff
- Improves diff view with essential theme
- Fixes bug when forcing the use of wss protocol in the VNC client.
- Fixes DB error when updating the table 'jailservers'. The field "laststrerror" is truncated when needed
- Added support for editing source files of Verilog (detecting 'v' extension)
- Added support to localized float numbers in grade
- Fixes bug. Restored activities lost the images in description