Releases: ls1intum/Artemis
8.4.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add problem statement as a selectable file in the editor with live preview by @HawKhiem in #11348Integrated code lifecycle
: Retry missing build jobs by @jfr2102 in #11330Quiz exercises
: Add unrated mode to quiz training by @MoritzSpengler in #11382Tutorial groups
: Improve student tutorial group detail page by @marlonnienaber in #11350General
: Restructure course update page by @jonas-de in #11338General
: Fix calendar events rendering edge cases by @marlonnienaber in #11407
Bugfixes
Programming exercises
: Prevent online code editor from overwriting other files during build/refresh by @HawKhiem in #11418Integrated code lifecycle
: Fix build job queries for canceled jobs by @jfr2102 in #11385Adaptive learning
: Fix learner profile settings by @ahmetsenturk in #11324General
: Fix connection warning in Chrome by @tobias-lippert in #11430General
: Fix issues with exercise and course deletion by @krusche in #11451
Development
- Add Hyperion admin setup docs by @FelixTJDietrich in #11395
- Fix missing artemis profile in IntelliJ run configurations by @tobias-lippert in #11391
- Configure Spring AI relevant auto configurations only when hyperion is enabled by @tobias-lippert in #11390
- Restructure and improve coding guidelines in the documentation by @maximiliansoelch in #11320
- Add reviewer guidelines to documentation by @maximiliansoelch in #11311
- Split method in exam service by @tobias-lippert in #11381
- Migrate editor to use DTOs to update quiz exercise by @KonstiAnon in #11163
- Refactor reaction resource to use dtos by @LeZhen1105 in #11237
- Add test coverage config for Hyperion module by @FelixTJDietrich in #11386
- Shutdown application when deferred eager bean instantiation fails by @tobias-lippert in #11393
- Fix time logging formatting for edge cases by @SamuelRoettgermann in #11406
- Move calendar event sorting from client to server by @marlonnienaber in #11408
- Fix CourseLocalVCJenkinsIntegrationTest flakiness by @tobias-lippert in #11416
- Add architecture test to check for usage of MockBean or SpyBean by @tobias-lippert in #11412
- Split text exercise resource by @tobias-lippert in #11403
- Split course resource by @tobias-lippert in #11402
- Split programming exercise resource by @tobias-lippert in #11401
- Fix failing CourseLocalVCJenkinsIntegrationTest by @tobias-lippert in #11421
- Migrate quiz questions to use signals by @MoritzSpengler in #11297
- Fix git SSH URI generation for build agents by @bensofficial in #11447
- Cleanup GitService by @ekayandan in #11396
- Replace bootstrap components with primeng in calendar by @marlonnienaber in #11415
- Remove delete all exam room versions by @SamuelRoettgermann in #11441
- Split QuizExerciseResource by @tobias-lippert in #11426
- Add nebula dependency in Artemis by @Anishyou in #11400
- Introduce exam automation script by @ekayandan in #11218
- Fix failing quiz exercise e2e tests by @KonstiAnon in #11423
- Replace wrong assertion import in server test by @JackPGreen in #11409
- Add leaderboard server logic for quizzes by @MoritzSpengler in #11345
- Adapt failing CI check thresholds by @ekayandan in #11452
- Update server dependencies by @krusche in b4512b7, 463ddb9, 491073d and 78fb460
- Update client dependencies by @krusche in 3133cd6, 461d7f4 and c926613
- Remove mobile drag and drop polyfill by @krusche in 741e777
New Contributors
- @jonas-de made their first contribution in #11338
- @HawKhiem made their first contribution in #11418
- @JackPGreen made their first contribution in #11409
Full Changelog: 8.4.0...8.4.1
8.4.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Breaking Changes
- ❌ CI User Management for systems with Jenkins has been removed. Admins can configure required access for instructors manually and should consider to remove existing Artemis users from their Jenkins systems. Only the configured admin account needs to have access for Artemis to work properly.
⚠️ Spring AI is integrated for LLM based features directly into Artemis (easier to deploy than using EduTelligence). Admins need to configure API keys and activate thehyperion
module which contains features related to instructor assistance. Please follow the documentation on https://docs.artemis.cit.tum.de/admin/setup/hyperion.html
Improvements
Programming exercises
: Update java template to latest Ares and Gradle version by @krusche in #11374Programming exercises
: Prevent pushing repositories with symbolic links or submodules by @tobias-lippert in #11244Programming exercises
: Automatically retrigger builds for submissions without results by @tobias-lippert in #11315Programming exercises
: Add confirm dialog to assessment page to prevent loosing unsaved changes by @theblobinthesky in #11317Text exercises
: Add latest submission to Athena feedback suggestion request by @ahmetsenturk in #11113Quiz exercises
: Add highlight when scrolling to quiz question by @florian-glombik in #11290Quiz exercises
: Add a binge learning constraint to the training mode by @MoritzSpengler in #11309Quiz exercises
: Fix stepwizard scrolling behavior by @KonstiAnon in #11366Adaptive learning
: Add pair-wise feedback preference setup by @ahmetsenturk in #11160Communication
: Add tutor suggestions for all channels and allow to chat with Iris by @alexjoham in #11264 (disabled by default)Exam mode
: Add exam room management page for admins by @SamuelRoettgermann in #11111Iris
: Add lecture transcription feature to documentation by @isabellagessl in #10936Iris
: Integrate Memiris into the course chat by @Hialus in #11219 (disabled by default)General
: Allow to subscribe to the calender by @marlonnienaber in #11308
Bugfixes
Integrated code lifecycle
: Split log chunk per line to ensure the log limit by @jfr2102 in #11272Integrated code lifecycle
: Clean up processing jobs of disconnected nodes by @jfr2102 in #11275Quiz exercises
: Reset sample solution between training questions by @MoritzSpengler in #11310Quiz exercises
: Fix stepwizard scrolling issue by @KonstiAnon in #11363Exam mode
: Fix an issue for exams without programming exercise by @tobias-lippert in #11375General
: Fix visual bugs on loading spinners by @maximiliansoelch in #11288General
: Fix an issue in the statistics calculation by @KonstiAnon in #11329
Development
- Fix flaky StudentExamIntegration test by @SamuelRoettgermann in #11254
- Remove ngx-webstorage dependency and unify browser storage usage by @krusche in #11180
- Cleanup git service and make version control URI handling more consistent by @krusche in #11248
- Fix LocalVCIntegrationTest flakiness by @tobias-lippert in #11271
- Migrate non auto migrated decorators in the plagiarism-checks component by @AjayvirS in #11068
- Update user documentation with communication and mobile app features by @eylulnc in #11253
- Remove push notification proxy by @anian03 in #11224
- Check bean instantiations on startup by @tobias-lippert in #11065
- Remove repository caching by @tobias-lippert in #11273
- Reduce programming exercise schedule test flakiness by @jfr2102 in #11258
- Remove no longer required MacOS Safari handling in modeling exercises by @florian-glombik in #11270
- Combine sending lecture transcriptions and slides by @isabellagessl in #10574
- Remove ts-cacheable and simplify secure image component by @krusche in #11277
- Add mobile version of calendar by @marlonnienaber in #11266
- Fix server coverage thresholds by @tobias-lippert in #11316
- Fix client test build by @florian-glombik in #11321
- Disable Hazelcast phone home by @b-fein in #11291
- Fix flaky course score calculation test by @ekayandan in #11325
- Fix percentiles histogram metrics by @bensofficial in #11302
- Add nginx rate limit for passkey logins and https git operations by @bensofficial in #11269
- Add scheduled asynchronous build job result processing by @jfr2102 in #11276
- Do not use system temp dir for server tests by @tobias-lippert in #11151
- Add tutor suggestions to communication documentation by @alexjoham in #11268
- Cleanup reset options by @florian-glombik in #11293
- Replace usage of @tempdir by @tobias-lippert in #11333
- Improve trigger all performance by @tobias-lippert in #11334
- Fix failing calendar client test by @marlonnienaber in #11352
- Improve exam scores performance by @tobias-lippert in #11318
- Remove client dependency
uuid
by @krusche in #11367 - Remove card class from page wrapper by @rabeatwork in #11313
- Increase default concurrent result processing config by @jfr2102 in #11337
- Update REST APIs for quiz training by @MoritzSpengler in #11359
- Remove ismobilejs-es5 and smoothscroll-polyfill dependencies by @marlonnienaber in #11332
- Update apollon to latest version by @krusche in #11368
- Fix e2e tests after removing card-body class by @rabeatwork in #11373
- Fix backspace key in online editor manual feedbacks and search window by @theblobinthesky in #11281
- Initialize Hyperion module using Spring AI for inconsistency check and problem statement rewriting instead of Iris by @FelixTJDietrich in #11284
- Improve course management statistics performance by @tobias-lippert in #11335
- Export programming repositories in-memory by @ekayandan in #11027
- Remove continuous integration user management by @krusche in #11300
- Add stylelint and fix non-breaking SCSS issues by @rabeatwork in #11377
- Add database query performance check as github action by @tobias-lippert in #11365
- Remove dev calc values and reduce prod calc values for content height by @rabeatwork in #11312
- Fix documentation build by @tobias-lippert in #11384
- Improve database performance check github action output by @tobias-lippert in #11383
- Update server and client updates to the latest possible versions by @krusche in many different commits
Full Changelog: 8.3.4...8.4.0
8.3.4
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Exam mode
: Improve quiz step wizard by @florian-glombik in #11246
Bugfixes
Quiz exercises
: Fix internal server error in the quiz training mode caused by database inconsistencies by @MoritzSpengler in #11236Quiz exercises
: Fix an issue when importing quiz exercises with short answer questions by @KonstiAnon in #11249Quiz exercises
: Fix mission translation in quiz preview mode by @MoritzSpengler in #11265Communication
: Improve error message on long channel name by @eylulnc in #11251Exam mode
: Ensure header is displayed when scrolling with stepwizard in quiz by @florian-glombik in #11255General
: Fix an issue with the course archive link when scrolling is necessary by @tobias-lippert in #11279
Development
- Change EventListener to PostConstruct by @tobias-lippert in #11252
- Fix flaky localci listener test by @jfr2102 in #11225
- Fix an internal server error when starting Artemis locally by @KonstiAnon in #11154
- Unify footer height by @tobias-lippert in #11261
- Make repository operations more robust by @tobias-lippert in #11241
- Log exception when directory or file deletion fails by @tobias-lippert in #11278
- Update client dependencies by @krusche in 8a48bb6
- Update server dependencies by @krusche in 29eafb8
Full Changelog: 8.3.3...8.3.4
8.3.3
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add cursor as new predefined IDE for opening projects by @Juoper in #11099Programming exercises
: Hide cleanup button when local CI is used by @florian-glombik in #11239
Bugfixes
Exam mode
: Fix visual bug indicating no commit was made in exam summary by @tobias-lippert in #11226Exam mode
: Adjust test run layout and ribbon position by @florian-glombik in #11235Exam mode
: Fix programming exercise participation submissions page by @tobias-lippert in #11238Exam mode
: Prevent assignment repositories for exam programming exercises by @tobias-lippert in #11231Assessment
: Fix an issue in the course score calculation by @tobias-lippert in #11214
Development
- Fix mock sync storage service type import by @florian-glombik in #11223
- Reduce number of lint warnings by @florian-glombik in #11221
- Avoid unnecessary receivePack and uploadPack hook creation when serving git requests by @jfr2102 in #11213
- Reduce amount of unnecessary database fetches in courses dashboard call by @krusche in #11212
- Update node to 24.x and npm to 11.x by @krusche in #11220
- Update font awesome to v7 by @krusche in #11222
- Fix flaky programming exercise import test by @tobias-lippert in #11227
- Simplify git service by @krusche in #11199
- Add GitHub Action to check for large classes and classes with many dependencies by @tobias-lippert in #11183
- Reduce number of REST calls on student exams page by @tobias-lippert in #11206
- Fix more eslint warnings by @tobias-lippert in #11228
- Remove submission and result dependency for quiz training mode by @MoritzSpengler in #11215
- Fix client build warnings by @tobias-lippert in #11240
- Update client dependencies by @krusche in cbd4fc0 and ec467b3
- Remove dependabot in favor or renovate by @krusche in 2305206
- Update eslint config by @krusche in 993e581
- Update server dependencies by @krusche in 4f02e94 and 42af602
- Update different project dependencies by @krusche in 3c4188f
- Improve startup initialization in TokenProvider by @krusche in 7364749
New Contributors
Full Changelog: 8.3.2...8.3.3
8.3.2
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Simplify participation deletion dialogs by @florian-glombik in #11205General
: Improve exercise action consistency by @florian-glombik in #11204General
: Improve spacing for bullet points in problem statements by @Predixx in #11201
Bugfixes
Exam mode
: Fix an issue with Latex styling in problem statements by @ekayandan in #11207
Development
- Add testid to open online IDE button by @tobikli in #11139
- Update FAQ documentation by @cremertim in #11192
- Reduce log noise in ArtemisGitletService by @jfr2102 in #11208
- Update docs dependencies by @krusche in 628d921
- Update server dependencies by @krusche in 323257b
- Consistently use constants in server code by @krusche in 746406a
- Fix null pointer exception in course score calculation in bb01ea9
New Contributors
Full Changelog: 8.3.1...8.3.2
8.3.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Keep history on import by @tobias-lippert in #11184Programming exercises
: Improve programming exercise tables by @marlonnienaber in #11198Communication
: Keep original file name and shorten url for uploads by @anian03 in #11135Learning path
: Allow instructors to view average progress by @Yhmidi in #11053General
: Improve sidebar items styling by @eylulnc in #11044
Bugfixes
Quiz exercises
: Avoid exercise results when using the quiz training mode by @MoritzSpengler in #11190Communication
: Fix an issue related to undo delete by @eylulnc in #11182Exam mode
: Fix wrong student points after unfinished second round correction by @ekayandan in #11191
Development
- Close stale issues after 180 days by @maximiliansoelch in #11193
- Fix git base path not set by @tobias-lippert in #11188
- Avoid unnecessary REST call on student exam page by @tobias-lippert in #11196
- Fix an issue with Hazelcast map initialization by @jfr2102 in #11189
- Reduce number of repository locks by @tobias-lippert in #11194
- Update jacoco dependency by @krusche in a38a4c0
New Contributors
Full Changelog: 8.3.0...8.3.1
8.3.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Modeling exercises
: Add new diagram type sequential function charts by @niklaskerkhoff in #11120Quiz exercises
: Enable quiz training mode by @MoritzSpengler in #11165Quiz exercises
: Add spaced repetition algorithm to select quiz questions for training by @MoritzSpengler in #11055Communication
: Add FAQ consistency check to rewrite action by @cremertim in #10814Communication
: Add last seen message separator to each channel by @cremertim in #11159General
: Add a calendar view to visualize tutorial groups, lectures and exercise deadlines by @marlonnienaber in #11103
Bugfixes
Programming exercises
: Prevent pushing large files by @krusche in #11171Programming exercises
: Fix programming exercise instructor submissions by @jfr2102 in #11157Integrated code lifecycle
: Fix failing schedules by skipping when build agent is paused by @jfr2102 in #11130Lectures
: Fix an issue when video units do not inlcude an attachment by @krusche in fa8584fExam mode
: Fix import with programming exercises by @tobias-lippert in #11178
Development
- Use slice navigation in build agent details view by @tobias-lippert in #11152
- Fix an issue with audit events for passkey authentication by @florian-glombik in #11167
- Improve time formatting in logs by @SamuelRoettgermann in #11161
- Update to Angular 20 by @marlonnienaber in #11168
- Fix tutorial group test flakiness by @tobias-lippert in #11173
- Display correct user numbers in course deletion dialog by @florian-glombik in #11169
- Remove unused course management tab component by @florian-glombik in #11170
- Extend course setup script to create programming exercise by @florian-glombik in #11177
- Increase Iris heartbeat interval to 5 minutes by @jfr2102 in #11186
- Update server dependencies by @krusche in f4668fa
- Add renovate config for easier dependency management by @krusche in e4e99ff
New Contributors
- @niklaskerkhoff made their first contribution in #11120
Full Changelog: 8.2.4...8.3.0
8.2.4
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Bugfixes
Development
- Fix documentation deployment by @tobias-lippert in #11156
- Remove git repository caching by @krusche in #11155
Full Changelog: 8.2.3...8.2.4
8.2.3
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Remove the need to combine template commits by @krusche in #10960Programming exercises
: Improve code comparison by @ekayandan in #10885Integrated code lifecycle
: Improve finished builds overview performance by @tobias-lippert in #11142Text exercises
: Extend the learner profile with feedback preferences by @ahmetsenturk in #10916Lectures
: Integrate slide visibility scheduling by @eceeeren in #10705Iris
: Display session context in the course dashboard by @marlonnienaber in #11105Iris
: Display latest session in history by @florian-glombik in #11114
Bugfixes
Programming exercises
: Fix submission creation at commit time by @jfr2102 in #11138Communication
: Properly scroll to new posting when forwarded messages exist by @cremertim in #11122Lectures
: Fix attachment lecture units creation by @florian-glombik in #11115Exam mode
: Fix an issue with the scores performance by @tobias-lippert in #11128Iris
: Improve session history performance by @florian-glombik in #11134General
: Fix an issue when deleting a course with Iris sessions by @florian-glombik in #11143
Development
- Refactor Iris tests by @florian-glombik in #11110
- Use existing builds for protected branches and improve PR lookup to avoid forked PR interference by @egekocabas in #10719
- Increase test coverage for learner profile by @ahmetsenturk in #11117
- Add Helios push based lifecycle monitoring with manual DB migration status events by @egekocabas in #10873
- Do not write pipeline script directly with curl in the Jenkins pipeline by @b-fein in #11131
- Add screencasts for notification features by @PaRangger in #11141
- Remove unused translations by @tobias-lippert in #11149
- Delete git diff related server code and database tables by @ekayandan in #11144
- Add endpoint to fetch participation by repo name by @janthoXO in #10715
- Prioritize Hazelcast connection in deferred eager initialization by @krusche in e54ed9e
- Update server dependencies by @krusche in 2cb9e49 and 9d2ad47
- Simplify build job logs and result handling by @krusche in c6a2046
Full Changelog: 8.2.2...8.2.3
8.2.2
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Integrated code lifecycle
: Display consecutive failures in build agent details view and alert email by @jfr2102 in #11074
Bugfixes
Iris
: Fix not authorized alert in lecture student view by @florian-glombik in #11101Iris
: Only load sessions with messages into chat history by @florian-glombik in #11104General
: Fix updating user information removes user image by @LeZhen1105 in #11096
Development
- Adjust client coverage thresholds by @florian-glombik in #11090
- Add submit button to the new quiz practice mode by @MoritzSpengler in #11019
- Split and speedup large course repository query by @tobias-lippert in #11066
- Fix sending login emails when logging in with email by @bensofficial in #11095
Full Changelog: 8.2.1...8.2.2