The development team of Virtual Programming Laboratory (VPL) for Moodle presents the 3.3.1 version of this plugin.

This release includes fixes for VPL 3.3 and support for the Safe Exam Browser.

The Safe Exam Browser (SEB) allows a controlled environment for exams. VPL activities now can require the use of SEB and/or the use of SEB with specific configuration by the "Browser Exam Key". See https://safeexambrowser.org


Has been fixes different bugs in the use of “group work” activities introduced in the V3.3. If you are using V3.3 and “group work” it is recommended to upgrade to V3.3.1.

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.

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.

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:

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

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.