Releases: ls1intum/Artemis
7.10.4
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add notifications for SSH and personal VCS access token creation and expiry by @SimonEntholzer in #10358Programming exercises
: Disable illegal submission notifications for instructors submitting after the exercise due date by @SimonEntholzer in #10380Programming exercises
: Improve repository diff report generation performance by @SimonEntholzer in #10374Plagiarism checks
: Enhance navigation to plagiarism cases from detection page by @AjayvirS in #10078General
: Switch course title text color based on course color by @FelberMartin in #10375
Bugfixes
Text exercises
: Fix an issue in the text exercise submission view by @coolchock in #10390Assessment
: Fix an edge case issue in course score page with team exercises by @SimonEntholzer in #10401Communication
: Fix group chat notifications with null as name by @FelberMartin in #10381General
: Fix missing labels in the user interface by @coolchock in #10400
Development
- Unify deployment workflow inputs by @gbanu in #10399
- Update communication feature availability list in user documentation by @julian-wls in #10378
- Implement small server improvements by @krusche in cc09e99
- Cleanup server code by @krusche in 01d225d
- Fix client tests by @krusche in ed10070
Full Changelog: 7.10.3...7.10.4
7.10.3
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Communication
: Allow user to forward messages by @asliayk in #10331Communication
: Add option to expand the answer thread view by @asliayk in #10349Communication
: Adjust message container height and send button by @rabeatwork in #10361Plagiarism checks
: Inform instructors when student replies on a plagiarism case by @az108 in #10287Athena
: Add popup for accepting external LLM usage when requesting feedback by @ahmetsenturk in #10187
Bugfixes
Programming exercises
: Fix missing provider in instruction analysis editor by @ole-ve in #10379Communication
: Fix message search not showing results from some conversations by @asliayk in #10345
Development
- Add ESLint static code analysis tool by @magaupp in #10370
- Migrate exam and exam exercise import client code to signals by @coolchock in #10106
- Introduce tutorialgroup module API by @ole-ve in #10266
- Fix multiline handling and concurrent use of multiple monaco editors by @cremertim in #10371
- Remove angular test module by @tobias-lippert in #10275
- Update node and npm version by @krusche in #10387
- Update server dependencies by @krusche in 72ffaf0 and a804992
- Update client dependencies by @krusche in c3e1450 and 3772d73
- Fix super slow java compilation by @krusche in 07318ff
Full Changelog: 7.10.2...7.10.3
7.10.2
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Breaking changes
- Administrators need to add the
atlas
profile when starting Artemis (e.g. as Ubuntu service or within a Docker container) to make sure that competencies and learning paths are still available as features. If you want to disabled those features, you can remove the profileatlas
Improvements
Programming exercises
: Enable static code analysis for Rust with LocalCI by @magaupp in #10328Programming exercises
: Enable static code analysis for Dart with LocalCI by @magaupp in #10354Integrated code lifecycle
: Improve result animation for building and testing by @BBesrour in #10342Assessment
: Scroll down to complaint form after clicking on a complain button by @badkeyy in #10352
Bugfixes
Integrated code lifecycle
: Fix issue in result processing by @BBesrour in #10363Integrated code lifecycle
: Fix stale container cleanup by @jfr2102 in #10353Tutorial groups
: Fix tutorial configuration form not appearing by @az108 in #10359Exam mode
: Fix issue with second correction round results by @coolchock in #10357Exam mode
: Fix student exam timeline page by @SimonEntholzer in #10350General
: Make sure the filter button renders when reloading the course statistics page by @badkeyy in #10231
Development
- Add Atlas Profile with optionally autowired Atlas Java API by @ole-ve in #9936
- Improve exercise import e2e tests by @muradium in #10305
- Fix LTI deep linking by @tobias-lippert in #10346
- Migrate exercise group client code to signals by @coolchock in #10332
- Update markdown editor cursor position on backspace by @cremertim in #10360
- Fix missing source files in Jacoco report by @ole-ve in #10343
- Migrate plagiarism check UML diagrams to Apollon format by @farisd16 in #10222
- Add mobile app version compatibility by @asliayk in #10339
- Migrate exam exercises client code to signals by @coolchock in #10329
- Speed up build statistics query by using an index column by @krusche in e3eaaa2 and 78649aa
New Contributors
Full Changelog: 7.10.1...7.10.2
7.10.1
⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️
Improvements
Programming exercises
: Add Dart programming exercise template by @magaupp in #10265Programming exercises
: Remove unnecessary binary files from template and solution repository comparison by @AjayvirS in #10091Programming exercises
: Improve usability in the feedback analysis table by @az108 in #10292Integrated code lifecycle
: Save and update build job to database at the start of the process by @BBesrour in #10001Communication
: Add pinned messages filter by @asliayk in #10173Communication
: Add option to toggle channel privacy by @asliayk in #10315Communication
: Add shortcut to direct chats via usernames in conversation detail dialog by @asliayk in #10277Adaptive learning
: Add grade or bonus goal in learner profile by @JohannesStoehr in #10159
Bugfixes
Programming exercises
: Calculate submission time difference with server time by @badkeyy in #10123Programming exercises
: Improve repository view routing by @SimonEntholzer in #10249Programming exercises
: Enable different base URLs for interacting with git repositories by @SimonEntholzer in #10319Programming exercises
: Fix background color and position of problem statement preview by @PaRangger in #10325Assessment
: Fix sporadically delayed score calculation by @magaupp in #10289Communication
: Do not send a notification for own answers in a thread by @PaRangger in #10308Communication
: Allow recreation of a channel with same name after deletion by @badkeyy in #10189Communication
: Fix missing translation strings in discussion section by @PaRangger in #10334Adaptive learning
: Fix translation issues for competency title and description errors by @laxerhd in #10213
Development
- Reduce number of flaky server tests by @ole-ve in #10302
- Remove course modules by @tobias-lippert in #10267
- Remove all remaining Angular client modules by @coolchock in #10278
- Modernize Java server code by @krusche in #10221
- Improve documentation for feedback analysis table by @az108 in #10301
- Run all server tests in GitHub job for non-draft PRs instead of only module-effected tests by @ole-ve in #10300
- Add documentation about automatic student feedback for modeling exercises by @LeonWehrhahn in #10272
- Improve view build logs code by @BBesrour in #10180
- Remove translate testing module by @tobias-lippert in #10304
- Add documentation for authentication mechanisms by @SimonEntholzer in #10264
- Fix mockito warning by @tobias-lippert in #10327
- Update endpoints used by Scorpio by @janthoXO in #10323
- Display more in-depth health information about the hermes service by @PaRangger in #10068
- Migrate staging deployment from Bamboo to GitHub Actions by @gbanu in #10217
- Make environment variables in npm commands platform-independent by @tobias-lippert in #10322
- Add documentation for tool tokens by @janthoXO in #10276
- Use jhiTranslate directive in create exercise unit component by @laxerhd in #10247
- Upload JUnit report as artifact by @StefanNemeth in #10335
- Fix compile issues in documentation by @krusche in 1662815
- Update server dependencies by @krusche in a123bf1 and 33fc740
- Update client dependencies by @krusche in 822bb5d
- Improve server logic in exercise resource by @krusche in 10df068
- Update dependencies by @krusche in 04f9242
New Contributors
- @gbanu made their first contribution in #10217
- @StefanNemeth made their first contribution in #10335
Full Changelog: 7.10.0...7.10.1
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