-
Notifications
You must be signed in to change notification settings - Fork 6
Upgrade to version 2.1 #112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This commit introduces these three new features: - Exercise dashboard GUI was updated. It now includes both the name of the exercise in question and the corresponding course name. - New custom help page: when teachers generate the sharing code of one of their courses, a link to a customized help page is retrieved. In addition, students can open the URL shared by their teacher. Opening the link in a browser, they will see a help webpage that tells them how to use the course code in an interactive way, and how to fulfill and send their exercises. It also includes both teacher and course names to the new customized help page, making it more interactive and comprehensible by students. - Possibility of student's anonymity preservation: from now on, the server is saving the exercises sent by the students in an anonymous format in the system. It also adds a new option to the teacher's dashboard that allows them to hide/show student's names and surnames.
A new two-step teacher sign up process is introduced in this commit. From now on, a teacher can invite another teacher to join V4T using a simple form during their session in VSCode4Teaching. The app will return a link that can be shared with the new teacher, who will log in into the new web application and will be able to change the password as desired to start using the application. - To introduce the new registration, a new frontend application based on Angular is created. This will allow, later on, to introduce all the features that would have to be implemented in a web application context. - The Dockerfile is modified to facilitate the construction of the backend in Spring Boot, which introduces the Angular frontend as a previously built static resource. In addition, Spring Boot has been upgraded to version 2.5.8 for security reasons (to fix vulnerabilities CVE-2021-44228, CVE-2021-45046 and CVE-2021-45105) and the H2 database dependency to version 2.1.210 (because of vulnerabilities CVE-2021-23463 and CVE-2022-23221).
Dashboard status bar's button has been fixed and now disappears when logging out of V4T.
Axios dependency has been upgraded in V4T extension to version 0.26.1 in order to avoid CVE-2021-3749 and CVE-2022-0155 vulnerabilities.
To ensure compatibility of the upcoming v2.1.0 version with the current v2.0.2, some endpoints are reintroduced and marked as deprecated. New versions of some endpoints are updated and introduced & tests are modified in line with the new changes.
Web application's styles have been improved to guarantee its visualization in all kinds of devices and some dependencies have been updated to fix security vulnerabilities and improve plugin performance.
Some dependencies have been updated in V4T plugin, server and webapp in order to, furthermore, fix some security vulnerabilties.
V4T server introduces a new automatic documentation generation system in OpenAPI 3.0.3 format and interactive visualization through Swagger UI web interface.
The properties' files of the V4T server are reorganized without major changes.
Fixed some errors in the dashboard that were produced after the update of the directory naming format.
A new feature has been added to allow teachers to upload multiple exercises. To do so, they just have to use the new "Add multiple exercises" button available for each course and select a directory containing a folder for each new exercise. The folders must include the corresponding files that will later form the exercises' templates.
From now on, the full names of the students will be hidden by default in the exercise dashboard.
Some multimedia resources of the help page are updated according to the new features of the latest version of V4T.
Some bugfixes were introduced.
The simultaneous upload of multiple exercises has been modified, eliminating the intermediate directory that was previously generated.
b5fd544
to
df134ff
Compare
Main upgrade introduced in this commit is Spring Boot 2.5.12 since it fixes a potentially dangerous recently-discovered vulnerability (CVE-2022-22965).
New libraries and dependencies have been added to improve event logging in all layers of the application: - The backend introduces new calls to the log system (Log4J) to enter a log of all the requests it receives. - The extension makes use of the Winston library to log all HTTP requests it sends to backend. - The Angular webapp introduces the ngx-logger library to log all generated and sent HTTP requests.
New Dockerignore files have been created to improve performance and memory usage in Docker's image build task, removing all unnecessary files from Docker context. These files contain the same information as the corresponding gitignore files (already existing).
Previous commits introduced new assets for help webpage and it included two low-quality GIFs. Those animated images have been recorded again and quality has been improved.
A new button has been introduced in the GUI in the exercises and courses tree area (next to each of the exercises shown) that allows opening its associated dashboard as long as there is no other dashboard open, improving UX.
Some duplicate logger entries have been removed and some behaviors and levels of logger entries have been modified.
Fixed a bug where the status of the exercises in the dashboard was not updated correctly when the students started to do it (Not Started → On Progress).
Fixed a bug where the last modification date was incorrectly displayed on the dashboard caused by a problem in the organisation of time zones (all have been set to UTC as a common convention).
This commit introduces a new Dashboard preview mode specifically designed to allow opening the dashboard for any recorded exercise (and not only the currently downloaded exercise). In this mode, the ability to open exercise files and compare them with the original template is disabled (as these features require the exercise to be downloaded).
A specific indicative message is introduced and displayed when there are no students enrolled in a course and an otherwise empty dashboard is opened.
The Angular webapp has been updated to version 14.0.6 of this framework (latest version available).
Several dependencies used in the Visual Studio Code extension have been updated. The main changes include: - TypeScript version is updated from 3.9.10 to 4.7.4, making the necessary changes as a result of changes made to the language. - The use of the cheerio library is replaced by node-html-parser for the execution of tests on the HTML rendered on screen. - Dependencies such as Jest or ESBuild are updated to the latest versions, thus avoiding some security bugs detected by Dependabot in the version currently released in production.
This commit adds the possibility to right-click on courses and exercises in the tree view of the extension to display a context menu with the different possible actions to execute according to an explanatory text instead of according to their icons.
The minimum length policy for the name of the exercises has been modified from 10 characters to 3.
Improved error management in the simultaneous exercise upload process by modifying its algorithmic technique. This commit also adds automatic refresh of the course and exercise tree at the end of the upload.
This update fixes a security vulnerability and introduces new features.
The documentation of the complete application and its individual components has been improved, making it easier to understand and adapting it to the introduction of new functionalities in VSCode4Teaching version 2.1.3.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces all the new features and maintenance improvements done in VSCode4Teaching 2.1.
Main changes in this version:
Technical changes: