# Changelog 2019 ## 30.11.2019 * User settings (notifications) updated, new notification added. * Filters for tags and environments added to exercise lists. * Exercise tags implemented. * Bug fixes, English labels updated. ## 26.10.2019 * Updates in SIS module -- supervisors may unbind a groups, students no longer see organizational groups. * Fixing bugs in error messages and their translations. * Group relocation feature added for superadmin. ## 5.10.2019 * Better handling of unauthorized requests. * Improving user switching controls (superadmin stuff). * Adding interface for localized API error codes in UI. * Correction in can-submit condition check (correctly restricts number of allowed submits now). ## 22.9.2019 * Adding Go and Rust programming languages. * Superadmin may change any user password without verifying old password. * Updating email templates to support localized email subjects. * Major redesign of web application core to make it compatible with new versions or React and React Router. * Improving user's badge, adding ability to change effective role (for superadmin only). ## 23.5.2019 * Implementing first version of system messages (and corresponding admin page). * Switch to 24h format for all Datetime form fields (all locales). * Assignment results page redesigned. * New admin's dialog for creating users (manually). * Improving performance of assignment best solution identification and related DB schema issues. * Fixing bugs, improving ux. ## 15.4.2019 * Haskell support added. * Several bugs fixed, including bug in judge of float numbers. ## 24.3.2019 * Prolog support added, exercise simple config form slightly refactored. * Bug fixes and minor ux improvements. ## 8.3.2019 * Bug killing spree. * SIS isolation, showing external identifiers for users. * Allowing the user to select default page (after login). * When security token expires or anonymous user attempts to access page that requires authentication, the page is remembered and user is redirected there after login. * Keeping date of users last authentication, so we can delete students that have been inactive for a long time. ## 17.2.2019 * New broker features (reading stats, freeze/unfreeze) implemented (including controls in UI). * Updating appearance of registration forms. * Multiple webapp instances may now run on the same domain (and DEMO recodex was installed on the MFF domain). * Adding a better endpoint for getting and setting exercise limits (**old limits endpoints were deprecated**). * Adding tags to exercises (API only). * Adding configuration and implicit groups to internal registration. * Migration of the entire database (and ORM model) to UTF8mb4 (finally, we can use emoji 😉). * Many bug fixes and minor UX improvements. ## 28.1.2019 * New exercise assignments page (where a list of all assignments of given exercise is presented). * Multi-assign form moved to exercise assignments page and merged with assignment edit form. * Adding "visible from" option to assignments which can postpone the publication of assignment to students. * Adding "show judge logs" option to assignments. If enabled, the students may see judge logs. * Adding "debug" flag to (re)submissions, so they can be distinguished in the submission history table. * Updating notification email templates and their localizations. * New notification created -- students may be notified when the awarded points for their solution is changed. * Judge logs are now available also for data-only exercises. * Pipeline detail page improved. ## 2.1.2019 * Shadow assignments finally completed. * Multiple bugs fixed. # Compatibility Table | Date | [web-app](https://github.com/ReCodEx/web-app/releases) | [api](https://github.com/ReCodEx/api/releases) | [worker](https://github.com/ReCodEx/worker/releases) | [broker](https://github.com/ReCodEx/broker/releases) | [fileserver](https://github.com/ReCodEx/fileserver/releases) | [monitor](https://github.com/ReCodEx/monitor/releases) | [cleaner](https://github.com/ReCodEx/cleaner/releases) | | --- |:---:|:---:|:---:|:---:|:---:|:---:|:---:| | 30.11.2019 | v1.19.0 | v1.19.0 | v1.6.4 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 26.10.2019 | v1.18.3 | v1.18.2 | v1.6.3 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 5.10.2019 | v1.18.2 | v1.18.1 | v1.6.3 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 22.9.2019 | v1.18.1 | v1.18.0 | v1.6.3 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 23.5.2019 | v1.17.0 | v1.17.0 | v1.6.2 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 15.4.2019 | v1.16.1 | v1.16.0 | v1.6.2 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 24.3.2019 | v1.15.2 | v1.15.2 | v1.6.1 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 8.3.2019 | v1.15.1 | v1.15.1 | v1.6.1 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 17.2.2019 | v1.15.0 | v1.15.0 | v1.6.1 | v1.3.0 | v1.2.1 | v1.0.0 | v1.1.0 | | 28.1.2019 | v1.14.0 | v1.14.0 | v1.6.1 | v1.2.2 | v1.2.1 | v1.0.0 | v1.1.0 | | 2.1.2019 | v1.13.0 | v1.13.3 | v1.6.0 | v1.2.2 | v1.2.1 | v1.0.0 | v1.1.0 |