Releases: ls1intum/Artemis
7.10.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Improve category display in exercise creation by @az108 in #10286Programming exercises
: Add static code analysis for Ruby with integrated code lifecycle by @magaupp in #10204Integrated code lifecycle
: Add Java blackbox exercise template by @chrisknedl in #10118Adaptive learning
: Change gif in instructor help in competencies view to video by @ardakaraman0 in #10030Iris
: Add chat in lectures by @isabellagessl in #9740
Bugfixes
Programming exercises
: Fix usability issues in the feedback analysis table by @az108 in #10237Communication
: Fix multiple channel icons appearing in conversation header issue by @asliayk in #10263Communication
: Fix improper deletion of combined emojis in Monaco editor by @asliayk in #10242General
: Warn users again before reloading certain pages with unsaved changes by @badkeyy in #10193
Development
- Remove label based deployment logic and transition to Helios by @egekocabas in #10260
- Remove course management and admin client angular modules by @tobias-lippert in #10184
- Migrate conversation components to use signals by @PaRangger in #10223
- Fix content-disposition header sanitization for file uploads by @asliayk in #10256
- Add linting rule for dayjs by @az108 in #10282
- Fix an issue with clearing text fields in an e2e test by @muradium in #10281
- Remove caching of long feedback by @az108 in #10269
- Remove angular mock test modules by @tobias-lippert in #10274
- Improve link preview validation by @krusche in #10250
- Speed up deletion of programming exercises by @b-fein in #10273
- Add async server test architecture test by @magaupp in #10255
- Add documentation for feedback analysis table by @az108 in #10259
- Exclude gradle source files from jacoco test report verification by @ole-ve in #10240
- Improve JaCoCo coverage report and validation tasks by @ole-ve in #10299
- Fix wrong dayjs import by @krusche in cc1e3cb
- Allow admins to retrieve websocket subscriptions by @krusche in 493dd4e
- Update client dependencies by @krusche in aee3cb0
- Update server dependencies by @krusche in 67a5a03
New Contributors
- @isabellagessl made their first contribution in #9740
Full Changelog: 7.9.1...7.10.0
7.9.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Noteworthy Changes
Programming exercises
: Admins can specify which repository authentication mechanisms are available by specifyingartemis.version-control.repository-authentication-mechanisms
inapplication-prod.yml
. Default ispassword,token,ssh
, however the default order might change in the future, because token and ssh based authentication are generally preferred in terms of security. Leaving out options will disable them in the code button in the user interface. When users choose a different available option in the browser, the browser will remember this locally. You can find more details in #10147.Artemis intelligence
: The first GenAI based features for instructor assistance are available. Editors can use Markdown actions to rewrite FAQs and the problem statement in programming exercises and to execute a first simple consistency check. At the moment, these actions are available through the latest version of Pyris for simplicity reasons in the deployment. In the future, a dedicated Artemis intelligence service might be introduced to decouple these features from Iris, which focuses on being a virtual tutor for students.
Improvements
Programming exercises
: Add MATLAB programming exercise template by @magaupp in #10039Programming exercises
: Add Ruby programming exercise template by @magaupp in #10202Programming exercises
: Add Artemis intelligence consistency check by @wasnertobias in #10209Programming exercises
: Add Artemis intelligence rewriting for problem statement by @FelixTJDietrich in #10156Programming exercises
: Improve flexibility of authentication methods in the code popup by @SimonEntholzer in #10147Integrated code lifecycle
: Allow admins to clear distributed data by @BBesrour in #10111Modeling exercises
: Enhance modeling feedback layout by @LeonWehrhahn in #10238Communication
: Add Artemis intelligence rewrite action for FAQs by @cremertim in #10157Assessment
: Remove duplicate message and center table by @laxerhd in #10051Lectures
: Leave unit form selection available in edit mode by @laxerhd in #10229Athena
: Add badge to display remaining AI feedback requests by @ahmetsenturk in #10234Iris
: Enable IRIS to answer with FAQs by @cremertim in #10093
Bugfixes
Programming exercises
: Fix an issue where the result export does not work with structured grading criteria by @chrisknedl in #10174Team exercises
: Fix synchronization for empty submissions by @coolchock in #10183Adaptive learning
: Fix an issue with translation not found in editing competency relations by @ardakaraman0 in #10201Communication
: Fix an issue with unread message count by @PaRangger in #10245General
: Fix hover background issue for certain buttons by @laxerhd in #10210
Development
- Fix TS3 deployments by removing docker-command override by @ole-ve in #10199
- Migrate test run module to signals, inject and standalone by @coolchock in #9914
- Fix failing LearningPathIntegrationTests by @N0W0RK in #10203
- Add unique constraint to build statistics by @coolchock in #10220
- Remove angular modules by @krusche in #10216
- Remove metis client module from the codebase by @cremertim in #10195
- Migrate client code for edit modals of posts by @cremertim in #10198
- Add Helios-based deployment workflow for test servers and reusable build logic by @egekocabas in #10109
- Remove Angular client modules in exam mode by @coolchock in #10169
- Run GitHub coverage summary step only on success in default test pipeline by @ole-ve in #10186
- Reduce coverage ratios to fix failing checks by @FelixTJDietrich in #10239
- Migrate client code for posting content by @asliayk in #10197
- Combine post and answer post reactions bars in communication mode client code by @asliayk in #10224
- Improve build stats performance by @BBesrour in #10108
- Update client dependencies by @krusche in 75b75fb and 6d861a9
- Update server dependencies by @krusche in 8a2758a
- Fix a client test lint issue by @krusche in c8c93d2
- Update default order for repository authentication mechanisms to password, token, ssh by @krusche in 000c5fb
New Contributors
- @egekocabas made their first contribution in #10109
- @ahmetsenturk made their first contribution in #10234
Full Changelog: 7.9.0...7.9.1
7.9.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Update java exercise docker image to java17-22 by @maximiliansoelch in #10172Adaptive learning
: Add learner profile by @N0W0RK in #9673Adaptive learning
: Improve individual learning path display by @krusche in 618f7d5Communication
: Add course-wide channel option by @asliayk in #10052Communication
: Keep file names when downloading attachments by @PaRangger in #9970Athena
: Improve AI feedback request validation by @maximiliansoelch in #10165General
: Add support for markdown callouts by @tobias-lippert in #10158
Bugfixes
Programming exercises
: Fix padding issue in task display by @PaRangger in #10151Text exercises
: Fix an edge case with discarded Athena feedback suggestions for tutors by @maximiliansoelch in #10140Text exercises
: Fix an issue where students cannot see automatic unreferenced feedback by @EneaGore in #10179Communication
: Prevent multiple group chats with same users by @asliayk in #10138Communication
: Fix broken link when referencing a lecture attachment in a post by @PaRangger in #10164Communication
: Fix cursor jump issue during list text editing by @asliayk in #10181Assessment
: Fix an issue where grading criteria are not applied correctly on drag and drop by @chrisknedl in #10127Assessment
: Fix an issue where instructors accidentally override presentation scores by @krusche in #10143
Development
- Update to Angular 19, standalone and
inject()
by @krusche in #10112 - Directly access Jenkins REST API for all interactions by @krusche in #10084
- Fix flaky communication module test cases by @PaRangger in #10166
- Add tool token support by @janthoXO in #9408
- Execute server tests only for changed modules in GitHub action for non-default branches by @ole-ve in #10036
- Add client tests for markdown callouts rendering by @tobias-lippert in #10168
- Compress specific websocket messages with gzip to reduce payload size by @krusche in #10087
- Set the isGraded flag to false for student athena requests by @EneaGore in #10155
- Define DTO architecture test per module with module-specific thresholds by @ole-ve in #9959
- Update client dependencies by @krusche in e0cda16, d4d178b, fec18d9, and a67e78b
- Update server dependencies by @krusche in 3370248 and 1543e3e
- Do not sent weekly emails for users without active courses by @krusche in 54422e7
- Convert control flow syntax by @krusche in 972072a
- Update eslint configuration and fix many client code warnings by @krusche in 99a0a25
- Remove angular modules in core folder by @krusche in deede10
- Remove angular modules in admin folder by @krusche in 1519d2b
- Update playwright dependencies by @krusche in 1fce5fd
- Update katex client library to avoid security issues by @krusche in 0539597
- Remove unused code by @krusche in fad4249
- Fix serialization error for learner profiles with JsonIgnoreProperties by @krusche in 8c26290
- Fix IRIS message rendering by @bassner in b9e968c
Full Changelog: 7.8.3...7.9.0
7.8.3
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add Bash programming exercise template by @magaupp in #10089Adaptive learning
: Improve terminology of competency relations by @ardakaraman0 in #10031
Bugfixes
Programming exercises
: Fix programming language feature flags by @magaupp in #10110Programming exercises
: Update points automatically when the result changes by @Anishyou in #10113Modeling exercises
: Fix manual feedback results not being shown by @muradium in #10132Communication
: Resolve an issues when displaying replies to a post by @PaRangger in #10122Communication
: Improve visibility of pinned messages by @badkeyy in #10117Assessment
: Do not display automatic as additional feedback in the online code editor by @LeonWehrhahn in #10120
Development
- Add client test to check reactivity of post content by @PaRangger in #10126
- Improve git access operations performance by @SimonEntholzer in #9809
- Update thymeleaf email templates by @krusche in #10114
New Contributors
- @Anishyou made their first contribution in #10113
- @ardakaraman0 made their first contribution in #10031
Full Changelog: 7.8.2...7.8.3
7.8.2
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Improve task bar design by @PaRangger in #10095Programming exercises
: Remember scrolling position when switching between files in the online code editor by @chrisknedl in #10053Integrated code lifecycle
: View build logs in the browser by @BBesrour in #9990Lectures
: Replace guided mode with status bar edit and create view by @florian-glombik in #9655General
: Fix an issue with course deletion summary entries by @ole-ve in #9856
Bugfixes
Programming exercises
: Fix image export in combination with tooltip text by @badkeyy in #10070Assessment
: Keep long feedback after saving an assessment by @chrisknedl in #10090
Development
- Fix syntax error in query in IrisExerciseSettingsRepository by @SimonEntholzer in #10104
- Add different execution modes for local playwright setup by @SimonEntholzer in #10064
- Migrate exam scores module to signals, inject and standalone by @coolchock in #9921
- Migrate client code for the assessment dashboard by @maximiliansoelch in #10086
- Migrate client code for complaints by @maximiliansoelch in #10085
- Remove unused reference in posting models by @PaRangger in #10075
- Change posting deletion logic to not abort when deconstructing a post by @badkeyy in #10073
- Add playwright exam checklist e2e tests by @muradium in #10050
- Migrate client code for the grading system by @maximiliansoelch in #10055
- Update client dependencies by @krusche in 0d71dfd and 294adf7
- Update server dependencies by @krusche in 327857d
Full Changelog: 7.8.1...7.8.2
7.8.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Text exercises
: Highlight selected result in result history timeline by @EneaGore in #9845Communication
: Add recents section to sidebar by @asliayk in #10033Plagiarism checks
: Add direct link to case view by @AjayvirS in #9747
Bugfixes
Communication
: Add loading indicator when adding users to channel by @PaRangger in #10032Communication
: Fix performance issues in mark all read feature by @krusche in #10083Assessment
: Fix display of exercise title in assessment dashboard by @maximiliansoelch in #10103
Development
- Make compose for playwright tests more reliable by @muradium in #10065
- Migrate standard competencies admin import component by @ole-ve in #9911
- Enable gzip compression for nginx by @bensofficial in #10092
- Update liquibase property name in gradle build config by @AjayvirS in #10096
- Remove testwise coverage support by @krusche in #9993
- Prevent exception in Iris for inactive exercises by @krusche in #10099
- Update
@swimlane/ngx-graph
to 9.0.1 by @krusche in #9717 - Add a script to automatically increase the version number by @krusche in e8655fb
- Update docs python dependencies by @krusche in 84ff994
- Update node to 22 in workflows by @krusche in d8d2239
- Update spring security LTI library to 0.3.0 by @krusche in 116ed6a
- Unify docker image definitions by @krusche in 1474f61
- Reorganize build.gradle and improve spotless configuration by @krusche in f5c8ef0
- Remove deprecated HttpClientTestingModule in client tests by @krusche in 71dedae
- Add example of client test with vitest by @krusche in d6a1b81
- Improve build.gradle configuration by @krusche in f37cb53
- Improve client config by @krusche in b26821c
- Implement small server code and log improvements by @krusche in 4e56238
Full Changelog: 7.8.0...7.8.1
7.8.0
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add group feedback feature to feedback analysis table by @az108 in #9884Programming exercises
: Add static code analysis for Python exercises with integrated code lifecycle by @magaupp in #9573Programming exercises
: Add Go programming language template by @magaupp in #9751Programming exercises
: Support more test result formats in LocalCI by @magaupp in #9691Integrated code lifecycle
: Improve build status updates for users by @BBesrour in #9818Integrated code lifecycle
: Show new result progress bar in exam overview and exercise details pages by @BBesrour in #10048Integrated code lifecycle
: Show ssh fingerprints by @SimonEntholzer in #9650Integrated code lifecycle
: Improve reinitialization when pausing build agents by @BBesrour in #9939Plagiarism checks
: Improve file selection in comparison by @AjayvirS in #9789Communication
: Add shortcut to private messages on usernames by @PaRangger in #10007Communication
: Add feature availability list to user documentation by @julian-wls in #10015Communication
: Allow users to mark all channels as read by @cremertim in #9994Lectures
: Add dismiss warning for unsaved changes to title or period section by @florian-glombik in #10023Iris
: Improve first time user consent message by @krusche in 50adb94General
: Improve cleanup service by @coolchock in #9851General
: Display total LLM cost in course detail view by @wasnertobias in #10019General
: Support opening instructor actions in new tab by @laxerhd in #9966General
: Add hover effect for all sidebar items by @laxerhd in #9663
Bugfixes
Programming exercises
: Fix inconsistencies between diff viewer and diff line stats by @magaupp in #9984Programming exercises
: Improve error handling when the diff report cannot be generated by @krusche in #10034Communication
: Fix scrolling error for long messages by @PaRangger in #9997Communication
: Fix encryption issue in push notifications by @PaRangger in #10060Lectures
: Remove guided mode exercise creation shortcut by @florian-glombik in #10022Exam mode
: Do not display working time differences for tests exams by @krusche in b21a9c4Iris
: Fix the about page by @bassner in #10016Iris
: Only load settings on non exam exercise to prevent bad request banners by @krusche in 1f0f75b
Development
- Migrate client code for conversation detail tabs by @asliayk in #9973
- Update LTI components to use Angular 18 practices by @raffifasaro in #9908
- Remove race condition in faky playwright test by @SimonEntholzer in #10013
- Add test server 7 to GitHub deployment by @bensofficial in #10042
- Remove redundant e2e test by @muradium in #10046
- Migrate client code for emoji components and conversation services by @asliayk in #10021
- Update read the docs config by @krusche in #10054
- Restrict course detail page access by @cremertim in #9834
- Add deployment info and best practices to playwright docs by @muradium in #9807
- Add e2e tests for git exercise participation using ssh and token by @muradium in #10006
- Migrate suspicious behavior module to new client coding guidelines by @coolchock in #9887
- Update sentry config by @magkue in #9824
- Update server dependencies by @krusche in #10061
- Improve wording in competency help window by @ufukygmr in #9933
- Migrate admin-standardized-competency service to use inject() by @ole-ve in #9910
- Migrate client code for posting header and footer components by @asliayk in #9932
- Fix null pointer exception in Metrics Bean for non scheduling core nodes by @krusche in 5c11585
- Improve error handling when generating student exams by @krusche in c4bc5a8
- Optimize exam query by @krusche in 1435bfe
- Update server dependencies by @krusche in a0bf56d, 3a6832e, 669422b, 1365538 and 4e1f491
- Update client dependencies by @krusche in 64a0d1e and f30ec88
- Fix an issue with multi node e2e tests by @krusche in e47db93
New Contributors
- @julian-wls made their first contribution in #10015
- @magkue made their first contribution in #9824
- @wasnertobias made their first contribution in #10019
- @ufukygmr made their first contribution in #9933
- @laxerhd made their first contribution in #9966
Full Changelog: 7.7.5...7.8.0
7.7.5
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Integrated code lifecycle
: Improve logging when build job times out by @BBesrour in #9955Modeling exercises
: Inline AI feedback view by @LeonWehrhahn in #9799Quiz exercises
: Improve user interface of quiz header and footer by @rabeatwork in #9744Communication
: Allow tutors to monitor channels as moderator by @cremertim in #9874Communication
: Improve design of hover area on messages by @asliayk in #9963Iris
: Add course chat settings by @Hialus in #9866Iris
: Allow team repository access for Iris by @bassner in #9975Iris
: Enhance student support with proactive assistance by @kaancayli in #9558Iris
: Add links to citations for lecture questions by @yassinsws in #9019
Bugfixes
Programming exercises
: Only replace existing files when populating build plan repositories by @SimonEntholzer in #9968Programming exercises
: Fix table overflow in rendered markdown by @rabeatwork in #9957Integrated code lifecycle
: Fix an issue with stale containers by @BBesrour in #10005Quiz exercises
: Fix an issue when automatically evaluating a live quiz by @Hialus in #9988Communication
: Fix visibility of create channel option for students by @asliayk in #9989General
: Fix header position in exercise and course summaries by @PaRangger in #9996
Development
- Fix LTI content selection table not loading by @raffifasaro in #9965
- Enable bearer authentication by @janthoXO in #9403
- Swap test names for bearer auth by @janthoXO in #9982
- Improve and simplify local playwright setup by @SimonEntholzer in #9796
- Migrate FAQ feature to new client guidelines by @cremertim in #9902
- Migrate build agents components by @BBesrour in #9923
- Migrate tutorial groups service folder to new angular guidelines by @az108 in #9941
- Add exam update audit event by @coolchock in #9956
- Ignore build directory in Jest's module path by @magaupp in #9995
- Enable deactivated LocalVC integration tests by @SimonEntholzer in #9942
- Update playwright dependencies by @krusche in 6439741
- Update server dependencies by @krusche in 74d48e6
- Update client dependencies by @krusche in eb3b2a3 and e687499
- Improve server test cleanup to reduce flakiness by @krusche in 8504af9
- Improve health services by @krusche in 0f07355
- Improve server test quality by @krusche in 0005603
Full Changelog: 7.7.4...7.7.5
7.7.4
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Integrated code lifecycle
: Support multiple SSH keys per user by @SimonEntholzer in #9478Integrated code lifecycle
: Open repository for editors and instructors during assessment by @SimonEntholzer in #9898Integrated code lifecycle
: Provide Instructors more options to control container configuration by @BBesrour in #9487Adaptive learning
: Improve competency student view by @MaximilianAnzinger in #9916Communication
: Allow users to reference FAQs in messages by @cremertim in #9566Communication
: Improve push notifications for the iOS mobile app by @PaRangger in #9787Lectures
: Improve lecture attachment validation by @florian-glombik in #9893Iris
: Display ingestion state for lecture slide upload by @yassinsws in #9090
Bugfixes
Communication
: Fix dropdown menu behavior for links to allow default browser options by @asliayk in #9832Communication
: Fix padding issues in channel search and post components by @PaRangger in #9927Communication
: Fix an issue with list formatting in Markdown by @asliayk in #9925Plagiarism checks
: Change separation operator for plagiarism csv file by @AjayvirS in #9847Lectures
: Fix file names for downloads with chromium browsers by @SimonEntholzer in #9899Iris
: Hide suggestions during response generation by @kaancayli in #9919
Development
- Migrate client code for pipes and loading indicator components by @PaRangger in #9880
- Decompose PDF Preview components by @eceeeren in #9592
- Fix failing server style by @SimonEntholzer in #9912
- Introduce module API for Atlas by @ole-ve in #9752
- Fix a flaky e2e test where the instructor edits a channel by @muradium in #9922
- Update Spring Boot to 3.4.0 by @krusche in #9852
- Update client tests documentation by @JohannesWt in #9913
- Update adaptive learning documentation by @JohannesWt in #9915
- Fix exercise deletion with existing Iris messages by @kaancayli in #9875
- Remove analytics because it was not used by @krusche in ca1beca
- Improve error logs when unresponsive build containers cannot be stopped by @krusche in f1caa8a
- Add missing annotation to BuildAgentDTO by @krusche in f81e35b
- Remove unused server service dependency in assessment module by @krusche in 2611d04
- Fix server test issues by @krusche in 417c379
- Update client dependencies by @krusche in 8d70e37
- Fix a server style issue by @krusche in 36adbf6
- Improve logging by @krusche in 1b9e7f8
- Improve exam mode server code by @krusche in de61561
Full Changelog: 7.7.3...7.7.4
7.7.3
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add feedback discussion feature to feedback analysis table by @az108 in #9810Programming exercises
: Simplify parsing of test suites in Jenkins setups by @b-fein in #9790Integrated code lifecycle
: Allow admins to pause all build agents by @BBesrour in #9892Communication
: Allow user to save messages for later by @PaRangger in #9705
Bugfixes
Programming exercises
: Fix an issue with the access log in exam exercises by @SimonEntholzer in #9872Programming exercises
: Use server time for exercise details dates by @rabeatwork in #9755Integrated code lifecycle
: Fix an issue with concurrent build queue access by @BBesrour in #9876Communication
: Fix announcement emails not rendering correctly by @PaRangger in #9850Iris
: Enable text copy-paste from Iris exercise chatbot window by @sebastianloose in #9761
Development
- Add exercise update announcement e2e tests by @muradium in #9784
- Reduce payload for live synchronization of build overview by @krusche in #9888
- Update pull request template test coverage section by @florian-glombik in #9870
- Add SARIF parser by @magaupp in #9609
- Add e2e tests for instructors assessing exams in the second round by @muradium in #9863
- Remove unused participation and repository caching from routing modules by @SimonEntholzer in #9886
- Deprecate participation<—>results by @krusche in 83ac531
New Contributors
- @sebastianloose made their first contribution in #9761
Full Changelog: 7.7.2...7.7.3