Releases: ls1intum/Artemis
7.6.2
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Breaking Changes
LocalCI
: Make sure to specify unique build agent names in theapplication-prod.yml
(see #9529)
Improvements
Programming exercises
: Add typescript programming language template by @magaupp in #9440Programming exercises
: Enhance filtering and sorting for error analysis by @az108 in #9315Integrated code lifecycle
: Improve clean up of temp folders in build agents by @BBesrour in #9542Integrated code lifecycle
: Add build agent name by @BBesrour in #9529Communication
: Allow tutors to propose FAQ by @cremertim in #9477Adaptive learning
: Redesign edit competency relation section by @JohannesWt in #9447General
: Track token usage of LLM service requests by @alexjoham in #9455General
: Add course archive for old courses from previous semesters by @edkaya in #9343General
: Improve user administration by @krusche in #9533General
: Add profile pictures to course user list and user administration by @PaRangger in #9553
Bugfixes
Quiz exercises
: Fix an error after using the practice mode by @Hialus in #9571Communication
: Remove announcements from unresolved filter by @cremertim in #9561Communication
: Reduce FAQ size by @cremertim in #9568
Development
- Refactor programming server tests by @ole-ve in #9506
- Fix exercise deletion with existing Iris sessions by @MichaelOwenDyer in #9567
- Fix the broken git programming submission e2e tests by @SimonEntholzer in #9546
New Contributors
- @alexjoham made their first contribution in #9455
Full Changelog: 7.6.1...7.6.2
7.6.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Adjust translations for participation mode tooltips by @iyannsch in #9468Programming exercises
: Add C++ programming language template by @magaupp in #9261Integrated code lifecycle
: Improve access log handling by @SimonEntholzer in #9425Integrated code lifecycle
: Add auxiliary repository view by @SimonEntholzer in #9321Integrated code lifecycle
: Allow admins to pause build agents by @BBesrour in #9348Communication
: Improve unread messages count view on sidebar by @asliayk in #9522Communication
: Reduce height of channel and chat item card by @rabeatwork in #9480Communication
: Improve sidebar user interface design by @asliayk in #9356Communication
: Always show favorite channels by @cremertim in #9510Adaptive learning
: Explain course competency view by @JohannesWt in #9511Learning paths
: Redesign learning path instructor view by @JohannesWt in #9144
Bugfixes
Programming exercises
: Fix test case parsing of nested test suite elements by @magaupp in #9490Communication
: Render announcement emails correctly by @PaRangger in #9520Communication
: Remove hidden conversations from favorites by @asliayk in #9473Communication
: Fix an issue when referencing lectures that contain brackets in title by @PaRangger in #9528Communication
: Fix an issue with link previews by @pzdr7 in #9532Lectures
: Fix PDF rendering issue in lecture units by @eceeeren in #9482General
: Design the border radius of the sidebar uniformly by @FleckiBunti in #9481
Development
- Fix diverging translations by @iyannsch in #9471
- Synchronize windfiles and build scripts by @magaupp in #9466
- Update programming exercise docs for integrated code lifecycle by @BBesrour in #9509
- Add workflow to label issues by @MaximilianAnzinger in #9432
- Add analysis of endpoint connections config file by @Jan-Thurner in #9238
- Refactor tutorial group tests by @MaximilianAnzinger in #9419
- Fix console errors on course overview page by @cremertim in #9526
- Add more data for telemetry by @SimonEntholzer in #9345
- Improve boundary cases with Hazelcast by @krusche in #9387
- Fix course messages e2e tests by @asliayk in #9536
- Update client dependencies by @krusche in b2c2285
- Update server dependencies by @krusche in b52e25e
- Lower CodeRabbit profile from assertive to chill by @bassner in 98d6d06
- Remove HybridD3 experiment user filters by @bassner in 6431b46
- Add missing security annotation to lecture ingestion REST endpoint by @krusche in f0d60cb
- Update calculation of module complexity by @krusche in 1a7959e
- Cache gifs and improve styling of competencies explanation video by @krusche in 63d06ba
New Contributors
- @FleckiBunti made their first contribution in #9481
Full Changelog: 7.6.0...7.6.1
7.6.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Improve preliminary AI feedback by @undernagruzez in #9324Programming exercises
: Add R programming language template by @magaupp in #9256Programming exercises
: Add custom themes for the Monaco editor by @pzdr7 in #9463Integrated code lifecycle
: Simplify user interface for ssh keys by @SimonEntholzer in #9454Integrated code lifecycle
: Allow to configure checkout path and timeout for programming exercises by @BBesrour in #9217Integrated code lifecycle
: Disable access to personal VCS access tokens in account settings for students by @SimonEntholzer in #9397Communication
: Add profile pictures to channel member overview by @PaRangger in #9450Communication
: Add FAQ search bar by @cremertim in #9423Communication
: Add default message to empty FAQ view by @cremertim in #9467Tutorial groups
: Redesign overview page by @PaRangger in #9445Plagiarism checks
: Use file extensions for plagiarism view by @magaupp in #9350Exam mode
: Add summary to exam deletion dialog by @ole-ve in #9185Exam mode
: Generate student exam on demand if student is registered for the exam by @coolchock in #9123Iris
: Upgrade settings system for Pyris V2 by @Hialus in #9247Iris
: Add chat in text exercises by @MichaelOwenDyer in #9362General
: Add search and sort to course overview by @edkaya in #9316General
: Improve exercise view when using LTI by @raffifasaro in #9329General
: Cache course icons and profile pictures to improve performance by @krusche in #9459
Bugfixes
Programming exercises
: Do not always show the request feedback button in the online code editor by @krusche in #9475Modeling exercises
: Fix submission error and redundant tooltip for AI feedback by @LeonWehrhahn in #9437Communication
: Fix user interface reload on channel selection by @PaRangger in #9464Learning path
: Fix translation for introduction screen by @JohannesWt in #9438Assessment
: Remove unnecessary whitespace in result date by @chrisknedl in #9465Lectures
: Fix an issue with undefined units when processing lecture units by @eceeeren in #9452Exam mode
: Remove exercise title from solution containers by @edkaya in #9442General
: Fix an issue when trying to delete too many users at once by @chrisknedl in #9430
Development
- Refactor file upload tests by @MaximilianAnzinger in #9415
- Migrate the MonacoEditorModule to standalone components by @pzdr7 in #9407
- Remove HttpClientTestingModule as it is deprecated by @JohannesWt in #9435
- Remove deprecated router module in client tests by @JohannesWt in #9439
- Improve metrics integration test coverage by @raffifasaro in #9306
- Improve LocalVC and SSH documentation by @SimonEntholzer in #9394
- Update monaco-editor to 0.52.0 by @pzdr7 in #9431
- Fix wrong result subscription for exam exercises by @Strohgelaender in #9453
- Fix issues with server test flakiness by @ole-ve in #9417
- Use @EnforceAdmin annotation on class level by @JohannesStoehr in #9422
- Add action to validate pull request title by @MaximilianAnzinger in #9449
- Fix architecture tests for exam deletion summary by @ole-ve in #9458
- Migrate the git diff report module to standalone components by @pzdr7 in #9443
- Fix exam assessment e2e tests failing by @SimonEntholzer in #9462
- Fix exam results overview e2e test by @SimonEntholzer in #9472
- Update client dependencies by @krusche in da03f27
- Update server dependencies by @krusche in 36f1260
- Adapt client test coverage by @krusche in 0139625
- Fix architecture tests in exam module by @krusche in d801ef8
New Contributors
- @raffifasaro made their first contribution in #9306
Full Changelog: 7.5.6...7.6.0
7.5.6
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add Rust and JavaScript to plagiarism detection by @magaupp in #9344Communication
: Add FAQs to Artemis by @cremertim in #9325Adaptive learning
: Add option to import exercises and lecture units when importing competencies by @JohannesStoehr in #9205Learning paths
: Add explanation view for learning path users by @JohannesWt in #9392Tutorial groups
: Add profile pictures to tutorial page by @PaRangger in #9353Exam mode
: Reduce width of sidebar by @rabeatwork in #9171General
: Redesign the course overview by @edkaya in #9221General
: Elevate toggle sidebar button by @PaRangger in #9411General
: Improve English and German texts by @BaumiCoder in #9368General
: Animate content sidebar on toggle by @PaRangger in #9412
Bugfixes
Programming exercises
: Close the diff modal when leaving the page by @pzdr7 in #9355Adaptive learning
: Change mastery threshold to input field and validate values by @JohannesStoehr in #9398Adaptive learning
: Fix prerequisites not shown in course enrollment by @JohannesStoehr in #9358Communication
: Fix author and channel name order in notifications by @krusche in 4d36797General
: Fix an issue with the default username validation during login by @krusche in 0aa3aaf
Development
- Remove no longer required secret push token for Jenkins setups by @b-fein in #9317
- Add labels for modules by @MaximilianAnzinger in #9374
- Add CI action to check that German and English translation keys are consistent by @b-fein in #9370
- Adjust server tests to restructuring into modules by @MaximilianAnzinger in #9314
- Fix pull request labeler path regex by @MaximilianAnzinger in #9381
- Refactor atlas tests by @MaximilianAnzinger in #9352
- Refactor lti tests by @MaximilianAnzinger in #9375
- Add check for REST endpoints to be in kebab case by @SimonEntholzer in #9210
- Fix flaky e2e tests by @SimonEntholzer in #9326
- Set unique hazelcast instance name for each abstract server test setup to reduce flakiness by @ole-ve in #9416
- Fix translation string check CI pipeline step by @b-fein in #9420
- Fix server test compilation by @JohannesStoehr in #9421
- Execute architecture tests on module basis by @MaximilianAnzinger in #9409
- Optimize local git repository cleanup by @julian-christl in #9322
- Fix flaky priorityExamTest by @SimonEntholzer in #9276
- Fix LocalCI flaky server tests by @BBesrour in #9424
- Remove redundant architecture test in atlas module by @MaximilianAnzinger in #9429
- Improve test code quality by @krusche in a243670
- Update client dependencies by @krusche in e15f2e9 and 6638906
- Update server dependencies by @krusche in 495bad6
- Refactor programming server tests by @krusche in aee8c00
- Change super class of LocalCI server tests by @krusche in c96f18b
- Reduce flakiness of server tests by @krusche in c77c69b
Full Changelog: 7.5.5...7.5.6
7.5.5
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Bugfixes
Integrated code lifecycle
: Fix an issue with git cloning over SSH by @krusche and @SimonEntholzer in 4e5e8e1Quiz exercises
: Fix a rare issue when starting a quiz by @krusche in 3c4fc96General
: Fix an issue with the page title of the login page by @krusche in #9378
Development
- Migrate account module to Angular lazy standalone component by @krusche in #9378
- Fix default URL for telemetry service by @b-fein in #9382
Full Changelog: 7.5.4...7.5.5
7.5.4
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add JavaScript programming language template by @magaupp in #8859Programming exercises
: Enable empty template for LocalCI by @magaupp in #9280Integrated code lifecycle
: Structure build logs folder by @BBesrour in #9304Integrated code lifecycle
: Add access log for repositories by @SimonEntholzer in #9184Modeling exercises
: Add preliminary AI feedback requests for students by @LeonWehrhahn in #9278General
: Improve tab navigation on login page by @krusche in #9373
Bugfixes
Development
- Add admin metrics page tests by @SimonEntholzer in #9249
- Document Jenkins and LocalVC setup by @BaumiCoder in #9266
- Exclude xml unit dependency due to transitive vulnerability by @Strohgelaender in #9339
- Fix the path of exercise- and lecture-type domain objects in the client by @ole-ve in #9313
- Merge test classes for same service by @Strohgelaender in #9359
- Remove atlas dependency on jgrapht and apfloat by @MaximilianAnzinger in #9342
- Update Pyris setup documentation according to PyrisV2 by @kaancayli in #9305
- Migrate admin metrics Angular code to new best practices by @krusche in #9299
- Configure Mend Bolt for GitHub by @krusche in 5144408
- Update client dependencies by @krusche in 128fd44, 3ab435c, 71148af and 63e8cad
- Update server dependencies and remove unused dependencies by @krusche in 17adae1
- Update server dependencies by @krusche in 6840edf
- Update docs requirements by @krusche in 49a75cd
- Update server dependency protobuf-java by @krusche in 00f38c0
- Update README and maintainers by @krusche in fb57835
- Fix issues with server test coverage verification by @krusche in 79e25b5
Full Changelog: 7.5.3...7.5.4
7.5.3
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add IDE preferences for "Open In" by @janthoXO in #9201Text exercises
: Add preliminary AI feedback requests for students on text exercises using Athena by @EneaGore in #9241Communication
: Add profile picture support by @PaRangger in #9277General
: Add delete button for not enrolled users by @BaumiCoder in #9224General
: Add SAML2 audit features by @dfuchss in #9233
Bugfixes
Programming exercises
: Translate programming language names by @magaupp in #9279Quiz exercises
: Fix an issue with the multiple choice visual mode by @pzdr7 in #9284Atlas
: Fix creation of competency relations by @MaximilianAnzinger in #9327
Development
- Refactor Markdown editor actions with the adapter pattern by @pzdr7 in #9260
- Restructure server code completely into modules by @krusche in #9307
- Fix cron task name in data export schedule tests by @MaximilianAnzinger in #9312
- Make Telemetry service async by @SimonEntholzer in #9287
- Add test file for script to generate random results when creating large courses locally by @az108 in #9298
- Update screencasts in communication documentation by @egekurt123 in #9176
- Fix profile for Apollon resource by @SimonEntholzer in #9320
Reviewers with the highest level of commitment
- @SimonEntholzer
- @undernagruzez
- @pzdr7
Full Changelog: 7.5.2...7.5.3
7.5.2
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Breaking changes
Artemis now includes a lightweight telemetry service. Please configure the following settings in the application-prod.yml
: info.operatorName
(e.g., your university name), info.operatorAdminName
, and info.contact
. This information enables the development team to better understand which organizations use Artemis and their configurations. By analyzing version statistics, the team can continue supporting older major versions with critical bug fixes, particularly for security issues. Security is a top priority for the Artemis team, and this telemetry will allow us to directly inform administrators about important security updates that may not be immediately disclosed in the public release notes.
Improvements
Programming exercises
: Fix translation issue for participation modes in exam management by @iyannsch in #9293Programming exercises
: Add visualization of test case errors by @az108 in #9213Quiz exercises
: Add cut and crop drag items from background image by @EneaGore in #9172Learning paths
: Add discussion section to lecture unit and exercises by @JohannesWt in #9264Lectures
: Add PDF preview for instructors by @eceeeren in #8987Exam mode
: Show exercise group title in breadcrumbs by @Strohgelaender in #9254General
: Improve login dialog by @krusche in #9270
Bugfixes
Integrated code lifecycle
: Fix rare issues with cloning and deletion on build agents by @BBesrour in #9207Lectures
: Remove redundant competency management from guided creation mode by @N0W0RK in #8989Communication
: Fix sidebar refresh issue after channel deletion by @asliayk in #9271Assessment
: Fix exercise assessment dashboard submission numbering by @SimonEntholzer in #9274Assessment
: Don't allow activating presentations if no presentation scoring is set by @Strohgelaender in #9251Plagiarism checks
: Fix slow performance in large courses by @krusche in #9269Exam mode
: Fix displaying incorrect task in exam summary exercise by @SimonEntholzer in #9294General
: Fix sorting on audit event log page by @SimonEntholzer in #9263General
: Fix scroll to section when clicking status bar in exercise update view by @florian-glombik in #9243
Development
- Group client entities by @krusche in #9268
- Improve LTI authentication by @maximiliansoelch in #9231
- Add telemetry service by @SimonEntholzer in #9174
- Configure telemetry variables for e2e tests by @pzdr7 in #9288
- Fix the login page e2e tests by @pzdr7 in #9289
- Use directive for programming test status details and diff report by @florian-glombik in #9259
- Add script to create large courses locally by @az108 in #9252
- Make sure the telemetry service only sends data in non development environments by @krusche in e64be2d
- Update client dependencies by @krusche in 9bb4893 and 921b188
- Fix an issue in the client build due to missing rimraf by @krusche in 1ac30d7
- Update supporting scripts READMEs and dependencies by @krusche in 19f45e5
- Update client documentation guidelines by @krusche in aaa6837
- Improve cleanup schedule for build logs by @krusche in d9f2cb8
- Try to fix flaky testPriorityRunningExam by @krusche in 46c2fd7
- Update server dependencies and remove custom jgit server code by @krusche in f75e4cf
- Fix an issue with the used JUnit5 version by @krusche in b723306
Reviewers with the highest level of commitment
Full Changelog: 7.5.1...7.5.2
7.5.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add Rust programming template by @magaupp in #8802Programming exercises
: Add online IDE settings by @iyannsch in #8965Integrated code lifecycle
: Let users generate personal access tokens by @SimonEntholzer in #9182Lectures
: Add bottom padding in course details by @JohannesWt in #9196General
: Replace the remaining markdown editors with Monaco by @pzdr7 in #9230General
: Add filter for exercises by @florian-glombik in #8858
Bugfixes
Programming exercises
: Fix import from file not importing build values by @BBesrour in #9192Programming exercises
: Remove the legacy README.md handling by @pzdr7 in #9220Communication
: Fix link in email notification by @Strohgelaender in #9212Communication
: Fix tooltip translation for the tutor icon in the conversation member list by @konrad2002 in #9229Iris
: Fix Competency generation by @MichaelOwenDyer in #9190
Development
- Add client sided endpoints parser by @Jan-Thurner in #8580
- Analyze REST calls and endpoints by @Jan-Thurner in #8771
- Use directive for programming repository button details in exercise detail overview by @florian-glombik in #9163
- Enable http3 for test servers by @bensofficial in #9232
- Tune data export test to prevent flakyness by @N0W0RK in #9155
- Replace the old translation feature in the client with the new desired approach by @asliayk in #8803
- Remove the unused Ace code editor dependency by @pzdr7 in #9246
- Remove lifecycle hooks in learning path related components by @JohannesWt in #9248
- Update version of micrometer prometheus package by @bensofficial in #9255
- Remove fenced locks in integrated code lifecycle by @BBesrour in #9180
- Improve endpoint analysis by @Jan-Thurner in #9236
- Add Artemis icon and description to LTI's dynamic registration info by @maximiliansoelch in #9222
- Remove cypress by @krusche in #9267
- Update axios to avoid security issues by @krusche in 1a6169f
- Update client dependencies by @krusche in 5c58835, 0331b31, 1bb9880, and 6511583
- Update gradle wrapper by @krusche in 4dc60a8
- Add performance guidelines and integrated them into the PR template by @krusche in 0748077
- Improve contributing guidelines by @krusche in 19c6b58
- Update code of conduct by @krusche in 8411fae
- Update server dependencies by @krusche in 728478f
- Deprecate Gitlab support by @krusche in 8202bda
- Avoid fetching account information multiple times while it’s not necessary by @krusche in aa17b0c
- Update dependencies for coverage supporting script by @krusche in 5865b0e
Reviewers with the highest level of commitment
New Contributors
- @konrad2002 made their first contribution in #9229
Full Changelog: 7.5.0...7.5.1
7.5.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Improve commit history view by @LeonWehrhahn in #8716Programming exercises
: Change the solution entry and testwise coverage editors to Monaco by @pzdr7 in #9173Integrated code lifecycle
: Add access tokens for authentication to LocalVC repositories by @SimonEntholzer in #8929Quiz exercises
: Change the short answer quiz question editor to Monaco by @pzdr7 in #9139Learning paths
: Add learning path completion button by @JohannesWt in #9099Adaptive learning
: Remove relates relation type for competencies by @JohannesStoehr in #8993Adaptive learning
: Add competency management operations for prerequisites by @JohannesStoehr in #9064Communication
: Change the Markdown editor to Monaco by @pzdr7 in #9124Communication
: Improve the user interface by @rabeatwork in #9103Exam mode
: Redesign the user interface of end page by @edkaya in #9112General
: Allow users to login with their email address by @krusche in #9181
Bugfixes
Integrated code lifecycle
: Fix handling of empty error text nodes in XML result parser by @just-max in #9204Quiz exercises
: Allow file editing when importing from overview by @EneaGore in #9165Communication
: Add private channel icon to sidebar by @asliayk in #9150Learning paths
: Hide unreleased learning objects in learning path view by @JohannesStoehr in #9105Exam mode
: Fix a wrong message when deleting a test run by @edkaya in #9191
Development
- Add support for ephemeral SSH keys for the authentication of build agents by @bensofficial in #8951
- Add arch rule for getValueElseThrow usage in repositories by @JohannesStoehr in #9142
- Refactor competency graph to get data passed from outside of component by @JohannesWt in #9141
- Add server tests for result hiding behavior for exam exercises by @pzdr7 in #9175
- Fix LTI on multi node systems by @Strohgelaender in #9085
- Enhance coverage report script by @N0W0RK in #9153
- Fix regex in GitHub test action to only find truly failed test cases by @maximiliansoelch in #9189
- Avoid database queries with pagination and left join fetch by @krusche in #8741
- Fix running server tests on Windows by @Strohgelaender in #9193
- Disable Eureka for single node setups by @bensofficial in #9198
- Change color of text in Spring Boot banner by @bensofficial in #9199
- Update typescript by @krusche in #9051
- Add build config entity for programming exercises by @BBesrour in #8897
- Update client dependencies by @krusche in 5fda6fa
- Update server dependencies by @krusche in 8c58642
Reviewers with the highest level of commitment
New Contributors
- @LeonWehrhahn made their first contribution in #8716
Full Changelog: 7.4.6...7.5.0