Releases: TMS-Uni-Stuttgart/Tutor-Management-System
Release 2.3.3
💻 Client
- Add functionality to the "XLSX File" button on the student overview page of the admin.
🗄 Server
- Add ability to generate a XLSX file containing the schein statuses of all students.
- Change the PDF with the schein statuses to differentiate between students which have passed and those who already have the schein (ie from a previous term).
📔 Documentation
- Fix grammar in some instances.
Please note that changes to the documentation are actually rolled out between releases. This section covers everything that has changed in the documentation since the last release.
🛠 Configuration
- Add case in schein status PDF template for those students who already have a schein.
Configuration files for the can be found below. Information about the environment variables can be found on the Configuration page of the documentation.
Version 2.3.2
🗄 Server
- Fix short test criteria not properly calculating if a short test is passed or not - This time for real. [#954]
🛠 Configuration
Configuration files for this release can be found in the v2.2.0 release. Information about the environment variables can be found on the Configuration page of the documentation.
Version 2.3.1
⚠ This release did not fix what it should fix. It is therefore marked as "pre-release".
🗄 Server
Fix short test criteria not properly calculating if a short test is passed or not. [#953]
This release did NOT fix this issue.
🛠 Configuration
Configuration files for this release can be found in the v2.2.0 release. Information about the environment variables can be found on the Configuration page of the documentation.
Version 2.3.0
⚠ Important
- Change repository to use the pnpm package manager instead of yarn. [#944]
💻 Client
- Add results of each exercise to the imported grading of a short test. [#818]
- Add ilias name of student to his/her info page. [#924]
- Change width of main scrollbar to 12px (from 8px). [#818]
- Change font of markdown textfield to a monospaced font (Roboto Mono). [#925]
- Fix attendance page of admins not filtering students by the selected tutorial. [#838]
- Fix request timeout on setting gradings for multiple students. [#942]
- Fix tutorials on the tutorial management page not being sorted by date. [#947]
🗄 Server
- Fix
ShortTestCriteria
not respecting percentages set in the short test. [#948]
📣 General
- Update TypeScript to version 4.1.3. [#944]
This is noteworthy because it's a major version bump.
📔 Documentation
- Change style of alert boxes. [#944]
Please note that changes to the documentation are actually rolled out between releases. This section covers everything that has changed in the documentation since the last release.
🛠 Configuration
Configuration files for this release can be found in the v2.2.0 release (download zip file). Information about the environment variables can be found on the Configuration page of the documentation
Version 2.2.0
💻 Client
- Add disabling deselecting the
ADMIN
role while editing a user if it's the last admin. [#793] - Add check if deleted user would be the last
ADMIN
and disable deleting him/her. [#762] - Add handbook button to AppBar if the server provides an URL to the handbook. [#724]
- Change code boxes in markdown previews in dark mode to use a lighter background color to properly support syntax highlighting. [#722]
- Remove HTML generation from markdown and use a server request instead. [#722]
- Fix student list not being shown properly in Safari browsers. [#805]
- Fix student list lacking feedback if there are no students or if no students match the search criteria. [#783]
- Fix gradings of a team not being properly shown on the points overview. [#807]
- Fix the dialog to enter an attandance not opening properly. [#808]
- Fix markdown preview on the point overview not loading properly. [#808]
🗄 Server
- Add syntax highlighting support for markdown. [#722]
- Add rejection if an update of a user would leave no
ADMIN
users in the database. [#793] - Add rejection of user delete request if it would delete the last available
ADMIN
user. [#762] - Change HTML generation to be complety server-sided. [#722]
- Fix background colors not being printed properly in PDFs. [#722]
- Fix serializing students to DTOs failed if they were part of a team and had at least one grading. [#783]
📣 General
- Move documentation from the GitHub wiki into a seperat page using docusaurus and GitHub pages. [#724]
🛠 Configuration
- Add
handbookUrl
property to the server settings.
Configuration files for the can be found below. Information about the environment variables can be found on the Configuration wiki page.
Version 2.1.2
🗄 Server
- Fix markdown CSS not properly loading. [#790]
🛠 Configuration
Configuration files for this release can be found in the v2.1.0 release. Information about the environment variables can be found on the Configuration page of the documentation.
Version 2.1.1
💻 Client
- Fix tutorials not being sorted by date and time in the NavigationRail and on the Dashboard. [#707]
- Fix team dropbox in
StudentForm
not updating properly after creating a student but falling back to the initially selected value. [#708] - Fix back button on
StudentInfo
page not working properly for tutors. [#721]
🗄 Server
- Fix substitutes lacking permission to generate sheet for attendances. [#721]
- Fix correctors lacking permission to enter gradings for teams. [#721]
- Fix employees lacking several permission: [#721]
- Permissions to manage sheets got added (create / update / delete).
- Permissions to set attendances of students got added.
🛠 Configuration
Configuration files for the can be found in the v2.1.0 release. Information about the environment variables can be found on the Configuration wiki page.
Version 2.1.0
⚠ Important
Please note: Due to a change in the data structure of the StudentDocument this release is NOT backwards compatible to versions <=2.0.0
.
💻 Client
- Add username to be displayed on the rows in the list of users. [#669]
- Add virtualization to
FilterableSelect
. [#670]
This fixes the issue where long lists of students lead to bad response times in the client side app. - Change "Enter Points" button on TeamCards to be disabled if the students of a team have different gradings. [#664]
If the student have different gradings the option "Enter Points Individually" is pre-selected. - Fix matriculation numbers being required in StudentForm. [#664]
🗄 Server
- Fix slow loading of students by changing the way gradings are saved. [#664]
This also fixes some general performance issue with loading documents from the DB. - Fix generated markdown for gradings not showing the correct total points for a hand-in. [#664]
- Fix generated markdown being completly empty and missing the exercise headers if a student did not have a grading for the hand-in. [#664]
- Fix exercise IDs in the DTO not being respected on sheet update. [#664]
🛠 Configuration
Configuration files for the v2.1.0
release can be found below. Information about the environment variables can be found on the Configuration wiki page.
📙 Repository
- Add a GitHub action to automatically build and push a docker image if a release gets published.
- Change tags to have no leading "v" anymore.
The release tag is used to tag the image. The image tags should not contain a leading "v" therefore the repository tags must not be lead by a "v" either. - Change image repository.
Starting from this release on the images will get served from the GitHub Container Registry instead of the Docker Hub.
Version 2.0.0
❗ Do NOT use
While this release could be used in production it still has performance issues if the count of GradingDocuments increases. Therefore you should not use this version in a live environment. The v2.1.0
release fixes these issues.
⚠ Important
Changes made in this release makes all versions >=2.0
incompatible with the versions <=1.7.5
💻 Client
- Add a page to enter presentation points. [#252]
- Add support for prefixed paths to host the app on (ie "https://somehost.org/prefix"). [#362, #365]
- Add view to generate multiple tutorial slots at once. [#381]
- Add the ability to import users from CSV. [#381]
- Add the ability to manage more tutorial related internals for the admin (ie see & change corrections, ...). [#460]
- Add the ability for tutors to assign substitutes to own tutorials. [#482]
- Add the abilitiy to easily change some settings as administrator. [#516]
These are- Can tutors excuse students?
- How many students should be in a 'default' team?
- Mailing related settings.
- Add settings page for the admin to manage several (not all) server & client settings. [#516]
- Add proper PDF generation (and PDF preview) if students of a team have different gradings. [#552]
- Add new page for all "hand-ins": [#552]
- Exercise sheets
- Scheinexams
- Short tests (new)
- Add creation/import of short tests and import of results of short tests. [#552]
- Add Drag & Drop support for the upload buttons on the import pages. [#596]
- Change navigation rail (former drawer) layout to be more densed down by bundling pages per perpuse not per tutorial. [#241]
This way the navigation rail has room for more items (like settings) and does not get clustered if one has been a substitute in many tutorials. - Change order of the management items in the navigation rail (more frequently used ones come first, now). [#552]
- Change the UI for assigning substitutes to be more user friendly. [#482]
- Change the AppBar to always have the dark blue background - regardless of theme. [#516]
- Change position of notifications to the bottom right (instead of bottom left). [#516]
This way the notifications don't cover up the navigation rail anymore. - Change student overview pages to use virtualization for the list. [#598]
This makes the app less "clunky" if a lot of students have to be displayed. - Fix version label clipping over some entries in the navigation rail. [#516]
- Fix markdown textfield to not exit preview mode if (programmatically) emptied during preview mode. [#516]
🗄 Server
- Add support for prefixed paths to host the app on (ie "https://{{HOST}}/prefix"). [#362, #365]
- Add path to generate multiple tutorials at once. [#381]
- Add path to generate multiple users at once. [#381]
- Add paths related to retrieving and changing application settings. [#516]
- Add special settings which have an effect on the client (and can have one on the server) (ie 'Can a tutor excuse a student?'). [#516]
- Add several paths related to short test. [#552]
- Change server to use NestJS as framework. [#239, #240]
- Change document models for the database. [#240]
The new models make use of the feature that is the aquivalent to SQL's join. With this in place keeping duplicate references are easier to handle and less error prone. - Change settings to use new
StaticSettings
andSettingsService
classes. [#362, #516]
This also moves sensitive settings out of the settings file into environment variables and eases the first-time setup process. - Change mailing settings to be optional and part of the settings saved in the database. [#516]
- Change grading PDF generation to generate a ZIP with multiple PDFs if the students of a team have different gradings. [#552]
- Change scheincriteria summary API to also include the students with the scheinstatus summaries. [#628]
With this change all students have to be fetched only once from the DB for pages which show scheincriteria summaries. This speeds up the loading (expecially for the admins).
🛠 Configuration
Configuration files for the v2.0.0
can be found below. Information about the environment variables can be found on the Configuration wiki page.
Version 1.7.5
💻 Client
- Add option for admin to generate a list with the schein statuses without shortened matriculation numbers. [#238]
- Re-Add the "passed / not passed" labels to the Studentoverview. [#238]
Note: They got removed earlier to the slow calculation of the criteria results. Since #235 fixed this, now, they can be re-added.
🛠 Configuration
One can find the configuration files in the Release notes of v.1.7.1.