# Changelog This change log tracks the releases on our [pilot server](https://recodex.mff.cuni.cz/). Since ReCodEx is in fact composed of many components, we also provide a table of component version which work together in stable releases. | 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) | | --- |:---:|:---:|:---:|:---:|:---:|:---:|:---:| | 11.6.2018 | v1.9.0 | v1.9.0 | v1.5.0 | v1.2.2 | v1.2.1 | v1.0.0 | v1.1.0 | | 1.5.2018 | v1.8.1 | v1.8.3 | v1.4.1 | v1.2.1 | v1.2.1 | v1.0.0 | --- | | 29.4.2018 | v1.8.0 | v1.8.2 | v1.4.1 | v1.2.1 | v1.2.1 | v1.0.0 | --- | | 20.4.2018 | v1.7.2 | v1.8.1 | v1.4.0 | v1.2.1 | v1.2.1 | v1.0.0 | --- | Older versions are at the bottom of this page. ## 11.6.2018 * New UI for reference solutions which is more similar to UI for regular solutions. * Points assigned to a submission evaluation by ReCodEx may be overwritten by supervisor. * Short description of the exercise restricted, so it is not visible to students. * Text with a hint for students (not synchronized with exercises) added to assignments. * Exercises (and assignments) may provide external link instead of text in MD. If the external link leads to a page containing plain text or markdown (and it can be fetched by CORS request), a preview is displayed directly in ReCodEx. * MultiAssign form is more user friendly. * When assignment is published, an optional switch can prevent from sending notification e-mails. * SIS codes added to group info. * JWT tokens (for API scripting) can be generated at User Settings page. * Compilation logs are carboncopied into files (with much more benevolent size constraints) when solution is re-evaluated in debug mode. * Affiliation is not mandatory for registration and login using CAS (may improve login via CAS experience for users with strange affiliations). * Email addresses added to user names in UI. New mailing endpoints were added in API, so they can be used in web app in the future. * API added and updated several important endpoints which will optimize fetching data in future versions of web app. * Cleaner released for the first time. * New token judge added in worker (will be employed soon after due testing). ## 1.5.2018 * Button for downloading best solutions in a ZIP archive added to Group Detail page. * Fixing multiple bugs. * Improving appearance and user experience. ## 29.4.2018 * Introducing data-only exercises (the user submits only data which are validated by custom judge). * Improving Smart-Fill feature in test configuration form. * Gravatar optimizations — user may disable/enable own gravatar and configure whether gravatars are visible to hir in general * Results table in Group Detail page is sortable by name and by total points now. * User may delete own submission comments. * Performance optimization of various SQL queries, functions, and visualization. * Displaying judge logs to supervisors. * Do not allow to create exercises without assigned group. * Additional API preparations (to be implemented in UI yet) - Introduce mass list endpoints for users and exercises. - Add endpoint for downloading best solutions archive of an assignment. ## 20.4.2018 * Various bugfixes and optimizations in REST API ## 17.4.2018 * Switching to Font Awesome 5 icons * Bug fixes, forgotten UI issues ## 14.4.2018 * Implementing support for organizational groups (organizational groups are meant for creating hierarchy, they cannot hold students nor assignments). * Adding language/environments list to assignments and exercises. * Exercise marked as broken on creation and if appropriate on forking * Create a submission failure when the submission will not even compile * Add revocation mechanism to authentication tokens and invalidation endpoint for all issued tokens of user (API only) * Implement issuing of restricted read-only tokens for usage in applications or scripts (API only) * Deadline of created assignments is further in the future and not now * Implement endpoint for deletion of comments (API only) * Refactoring, optimizations, bug fixes ## 28.3.2018 * Group page redesign — splitted into two pages (info and detail), cleaner design and much better performance * Assignments can restrict the set of runtime environments (as a subset of the RTEs of the exercise) * Pre-submit files validation with automated environment selection and entry point (bootstrap file) selection * Entry point selection also added to extra files in the exercise config form * Completed Czech translations * Bug fixes and performance optimizations ## 4.3.2018 * Form for assigning exercise in multiple groups at once was debugged and enabled. * External accounts (accounts mapped to SIS accounts) are prevented from changing their names. * Supervisors may delete solutions submitted by the students. ## 26.2.2018 * Fixing bugs. ## 25.2.2018 * Test limits were redesigned - Move to a separate page in the UI - Changed internally in the API (simple limits endpoints were removed) * Hardware group selection was added to the limits page - Second hardware group for long-running exercises added - Limits constraints are now bound to selected hardware group * Students can see stats table when enabled in group settings * Many bugs were fixed; number of submitted solutions reflects correct state (#153) ## 15.2.2018 * CPU/wall time selection in limits form (called "precise time measurement" in UI) * Extra (additional) files for exercise compilation can be provided by exercise author * Solution source codes and exercise test files can be downloaded as single ZIP package * New page for managing SIS interaction (for admins) * Students who also teach now can see both courses (which they study and which they teach) in SIS mappings * Exercise configuration is tested when edited and possible errors are reported * Group tree view improved and filtered, so only groups visible to logged user are shown * Bug fixes and performance optimizations ## 16.1.2018 * Users registered externally are now able to create local account * Several modifications in API and default pipelines, which are not apparent from webapp yet: - All compilation pipelines supports extra source files given by exercise author (so custom frameworks or boilerplates may be used in exercises) - Added cpu-time alongside wall-time in exercise limits and submission evaluation * Multiple bugs fixed and minor improvements implemented in the web application frontend * Refactoring and consolidation of some parts of the frontend in preparation for the modifications of the API ## 3.1.2018 * Added comment statistics to assignment solution list view * **Pascal** solutions will now accept multiple files * Added new file/folder existance check after compilation of user solutions (useful for cases when a compiler like **FPC** does not output proper binary file even if told to) * New loading screen to make sure the javascript bundle is loaded before anything else happens * Allow proper caching of bundle and static content in browser, which should bring better performance * Updated **CAS** login process, which should help especially on Android and (possibly desktop) Firefox to handle both authentication phases correctly * Display point stats in students assignment overview component * Multirow comment texts at solutions * Added custom messages for **Pascal** exit codes ## 19.12.2017 * Proper synchronization of assignments which copies all needed items * Various UX impromevents # Older Versions | 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) | | --- |:---:|:---:|:---:|:---:|:---:|:---:|:---:| | 17.4.2018 | v1.7.2 | v1.8.0 | v1.4.0 | v1.2.1 | v1.2.1 | v1.0.0 | --- | | 14.4.2018 | v1.7.1 | v1.8.0 | v1.4.0 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 28.3.2018 | v1.7.0 | v1.7.0 | v1.3.0 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 4.3.2018 | v1.6.2 | v1.6.2 | v1.3.0 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 26.2.2018 | v1.6.1 | v1.6.1 | v1.3.0 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 25.2.2018 | v1.6.0 | v1.6.0 | v1.3.0 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 15.2.2018 | v1.5.0 | v1.5.0 | v1.3.0 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 16.1.2018 | v1.4.4 | v1.4.4 | v1.2.1 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 3.1.2018 | v1.4.3 | v1.4.3 | v1.2.1 | v1.2.0 | v1.2.1 | v1.0.0 | --- | | 19.12.2017 | v1.4.1 | v1.4.1 | v1.2.0 | v1.2.0 | v1.2.0 | v1.0.0 | --- |