Skip to content

Releases: ls1intum/Artemis

9.4

11 Jun 21:42
edf1019

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Highlights

  • 📅 New exercise timeline for programming and modeling exercises: Instructors now configure all exercise dates from release to assessment on a unified, easier-to-use exercise timeline. Programming exercises received several usability improvements, and modeling exercises replace the previous separate date pickers with the same timeline.
  • 🖼️ Images in the repository view: Students and instructors can now view images directly in the repository view of programming exercises, without cloning the repository.
  • 🧠 Generate AI quiz questions from course competencies: In addition to free-topic generation, instructors can now generate quiz questions from selected course competencies. Artemis grounds the questions in the competencies and their linked lecture content, so they align with the course's learning objectives.
  • 🔍 Iris answers in global search: The global search now shows an inline Iris answer card above the search results. Ask a question and an AI-generated answer with lecture source citations appears directly in the search view.
  • 🤖 Turn review comments into exercise improvements: When creating a programming exercise with AI assistance, instructors can now leave review comments on the generated code, select those review threads, and have the next generation run implement exactly that feedback in the template, solution, and test repositories.
  • 🎯 Easier-to-read feedback: Feedback for modeling, text, and file upload exercises now uses one consistent layout, so students find points, comments, and AI feedback suggestions presented the same way across these exercise types.
  • Exam administration stays fast for large exams: The student list in exam management now loads quickly and supports searching, sorting, and filtering, even for exams with thousands of registered students.

Important information for administrators

  • REST API paths follow a new module-based convention: All account, course, and admin REST endpoints were migrated to a consistent module-name URL prefix, and an architecture rule now enforces this convention across the codebase. All old paths keep working through backward-compatible legacy aliases (responses carry Deprecation/Sunset headers), so existing integrations are not broken. However, external tools and scripts that call the Artemis REST API should migrate to the new paths, as the legacy aliases are scheduled for removal after the sunset date 2026-09-30. See #12811 and #12822.

Improvements

  • Programming exercises: Improve the usability of the exercise timeline by @marlonnienaber in #12762
  • Programming exercises: View images directly in the repository view by @Claudia-Anthropica in #12639
  • Programming exercises: Split build templates into a compile and a test phase for the integrated code lifecycle by @matyasht in #12725
  • Quiz exercises: Take the course context into account when generating quizzes with AI by @louis-heinrich in #12728
  • Quiz exercises: Validate the title length of short answer questions while editing by @MaximilianAnzinger in #12533
  • Modeling exercises: Replace the separate date pickers with the unified exercise timeline by @marlonnienaber in #12821
  • Exam mode: Make requesting AI feedback in test exams more reliable by @laadvo in #12794
  • Exam mode: Speed up the exam students view with server-side pagination, sorting, and searching by @ayca-cevdet in #12701
  • Assessment: Align the user interface for AI feedback suggestions in the assessment editors by @musaberkay in #12765
  • Assessment: Standardize the feedback display for modeling, text, and file upload exercises by @musaberkay in #12226
  • Iris: Show an inline Iris answer card directly in global search results by @Nayer-kotry in #12612
  • Iris: Detect and save the printed page numbers of lecture slides so slide pages can be linked correctly by @vivienxr in #12682
  • Iris: Polish the chat layout: better placement of the scroll-to-bottom button and the thinking indicator by @thynguyentumde in #12771
  • Hyperion: Select code review threads as feedback and have AI-assisted code generation implement them by @sawys777 in #12376
  • Adaptive learning: Add orchestration mutation tools for the Atlas Companion by @jaylann in #12746
  • Lectures: Make the slider of the YouTube player smoother by @vivienxr in #12601
  • Tutorial groups: Move management actions into the title bar and remove duplicated page titles by @krusche in #12797
  • Global search: Improve the formatting of search results by @florian-glombik in #12754
  • Global search: Automatically set search filters based on the current page by @florian-glombik in #12756
  • General: Polish the landing page FAQ accordion and feature cards by @thynguyentumde in #12770

Bugfixes

  • Programming exercises: Fix adding and removing environment variables in the build configuration of the exercise form by @matyasht in #12789
  • Programming exercises: Fix changing the assessment type when updating an exercise by @Lyynnnx in #12805
  • Programming exercises: Fix the customized build configuration using the wrong build template for non-Java exercises by @matyasht in #12876
  • Quiz exercises: Show the correct participation status for students by @laadvo in #12842
  • Quiz exercises: Fix "Invalid Input" persisting after deleting and restoring the only question by @MaximilianAnzinger in #12544
  • Quiz exercises: Fix re-uploading deleted drag item images by @Nihad74 in #12884
  • Exam mode: Fix an issue when importing an entire exam with a programming exercise by @matyasht in #12792
  • Exam mode: Make the exam checklist also consider failed exercise preparations by @matyasht in #12777
  • Exam mode: Fix the exam checklist wrongly reporting unprepared individual exams after removing a student by @Lyynnnx in #12868
  • Iris: Fix the collapsed exercise side panel for users who opted out of AI features by @Nihad74 in #12852
  • Adaptive learning: Fix a JSON serialization cycle for exercises with competency links by @jaylann in #12795
  • Communication: Fix a visual issue with the announcement dialog by @Lyynnnx in #12799
  • Global search: Exclude channels from search results when communication is disabled by @Lyynnnx in #12839
  • General: Fix practice mode becoming unavailable after the due date by @krusche in #12896
  • General: Fix the "Forgot password" link and spacing on the sign-in page by @krusche in #12890

Development

Server architecture & REST API

  • Extract the notification module from communication by @krusche in #12793
  • Move Jenkins CI code into a separate module by @krusche in #12810
  • Split the programming module into multiple smaller modules by @krusche in #12813
  • Declutter the core module by relocating feature code to its owning modules by @krusche in #12816
  • Migrate account, course, and admin REST controllers to a module-name URL prefix by @krusche in #12811
  • Enforce a consistent REST API path convention with backward-compatible legacy aliases by @krusche in #12822
  • Migrate tutorial group REST responses to DTOs by @WoH in #12687
  • Change complaint endpoints to use DTOs by @LeZhen1105 in #12395
  • Migrate competency and Iris REST endpoints to DTOs by @dogusaytok in #12726
  • Use DTOs for text, online, and exercise units by @WoH in #12787
  • Fix a Jackson cyclic-reference race by returning cycle-free DTOs by @krusche in #12791
  • Add an optional courseIds filter to the global search lecture endpoint by @Nayer-kotry in #12803
  • Convert unidirectional @OrderColumn to bidirectional mappedBy for quiz entities by @krusche in #12640
  • Add an entity usage architecture test to all modules and fix detection false positives by @krusche in #12804
  • Strengthen REST best-practice architecture rules (autho...
Read more

9.3

25 May 21:31
c39c201

Choose a tag to compare

9.3

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Important information for administrators

  • Breaking change: Athena, Apollon, LDAP, and SAML2 now require module-feature YAML flags: The Spring profiles athena, apollon, ldap, and saml2 have been removed and replaced with the existing module-feature toggle pattern. Any deployment that previously activated these features via --spring.profiles.active=…,athena|apollon|ldap|saml2 must add the corresponding artemis.<x>.enabled: true flag to its environment YAML before upgrading. Artemis exits at startup if the flag is missing. SAML2 deployments additionally need to inline (or --spring.config.additional-location) the application-saml2.yml.example template; without it, info.saml2.* is undefined and the SAML2 login button silently disappears. See #12711 for the full migration recipe.
  • LTI Moodle integration restored: An incompatibility introduced by the Spring Boot 4 upgrade had silently broken Moodle launches. Administrators who run an LTI Moodle integration should re-test their setup after upgrading. See #12769.
  • Client package manager is now pnpm: Self-hosters who build the client from source need corepack enable to activate the pinned pnpm version, then use pnpm install / pnpm start / pnpm run build instead of the npm equivalents. See #12699 and #12731.

Improvements

  • Iris: Add dedicated Iris onboarding flow for first-time users by @thynguyentumde in #12397
  • Iris: Drop EU location qualifiers from the AI experience picker by @bassner in #12700
  • Adaptive learning: Add advisory competency orchestrator for programming exercises by @jaylann in #12606
  • Quiz exercises: Quiz editor design migration by @louis-heinrich in #12599
  • Quiz exercises: Support nested Apollon selections in quiz generation by @FadyGergesRezk in #12611
  • Exam mode: Enable Athena AI feedback for submitted test exams by @laadvo in #12570
  • Team exercises: Support AI feedback requests for team exercises by @maximiliansoelch in #12702
  • Lectures: Extend deep linking for YouTube videos by @vivienxr in #12600
  • File upload exercises: Show assessment dashboard button by defaulting assessment type to manual by @Claudia-Anthropica in #12705
  • Modeling exercises: Remove obsolete automatic assessment option from the editor by @musaberkay in #12727
  • General: Improve landing page core web vitals by @krusche in #12541
  • General: Refine course overview and onboarding wizard styling by @krusche in #12598
  • General: Align course management card buttons with refreshed course overview styling by @krusche in #12764
  • General: Add courses and public messages to global search by @florian-glombik in #12720
  • General: Extend searchable global search entities by @florian-glombik in #12353
  • General: Add Weaviate health translation by @bassner in #12732

Bugfixes

  • General: Restore LTI Moodle integration broken by Spring Boot 4 upgrade by @krusche in #12769
  • General: Load translations earlier to fix raw keys on first render by @krusche in #12753
  • Quiz exercises: Fix missing submit button when starting practice mode by @laadvo in #12748
  • Communication: Fix system notifications in admin user interface not being displayed by @angatha in #12708
  • Communication: Fix user selector scrolling inside dialog by @anian03 in #12498
  • Iris: Fix wrong permission denied alert on AI experience page when Memiris feature is disabled by @krusche in #12709
  • Programming exercises: Replace non-printable characters in automatic feedback of Java blackbox template by @b-fein in #12661

Development

New Contributors

Full Changelog: 9.2...9.3

9.2

12 May 22:11
1008919

Choose a tag to compare

9.2

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Important information for administrators

  • New two-part version scheme: Starting with this release, Artemis uses a two-part version scheme X.Y (e.g. 9.2) instead of the previous three-part X.Y.Z (e.g. 9.1.2). The canonical form of this release is 9.2, not 9.2.0. Three-part hotfix versions (9.2.1, 9.2.2, ...) remain valid as exceptions for emergency bugfix releases. Internally, 9.2 compares as 9.2.0; deployments upgrading from 9.1.x will boot normally without any manual intervention. See #12695 for details.
  • Aeolus retired: The Aeolus CI build plan generator has been removed. Server administrators should remove any artemis.continuous-integration.aeolus.* configuration keys from their application-prod.yml if present. See #12536.

Improvements

  • General: Improve exercise participations and scores views by @ayca-cevdet in #12382
  • General: Disable edits of users if SAML2 is active by @dfuchss in #12542
  • General: Hide graded/practice mode badge when no submission exists by @DominikRemo in #12683
  • Programming exercises: Limit course and exercise short name length by @krusche in #12662
  • Exam mode: Align exam management buttons by @matyasht in #12675
  • Assessment: Support local LLM choice for feedback generation by @maximiliansoelch in #12650
  • Iris: Unify chat session types, services, repositories and resources by @Senan04 in #12504
  • Hyperion: Fix instructor checklist bugs and improve UI/UX by @HawKhiem in #12546
  • Hyperion: Trigger solution, template, and test repository generation via "Generate with AI" by @sawys777 in #12555

Bugfixes

Development

New Contributors

Full Changelog: 9.1.2...9.2

9.1.2

05 May 07:43
732b1c9

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Improvements

Bugfixes

  • General: Fix result history dropdown motivational messages by @laadvo in #12584
  • Communication: Fix missing length check when forwarding messages by @anian03 in #12516
  • Quiz exercises: Fix an issue with start now in large courses by @krusche in #12586
  • Quiz exercises: Fix missing title and submit button in preview and solution mode by @DominikRemo in #12591
  • Programming exercises: Validate programming exercise problem statement length by @SedaOran in #12560
  • Quiz exercises: Show missed deadline message for non-participating students by @DominikRemo in #12613
  • Lectures: Validate course ownership before applying edits by @simongundelwein in #12644

Development

New Contributors

Full Changelog: 9.1.1...9.1.2

8.7.5

04 May 12:29
a885d67

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Development

Full Changelog: 8.7.4...8.7.5

9.1.1

23 Apr 13:42

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Bugfixes

  • Quiz exercises: Fix an issue with quiz participations on multi node environments by @krusche in #12578
  • Quiz exercises: Fix apollon drag-and-drop quiz generation by @FadyGergesRezk in #12559
  • Quiz exercises: Remove temporary Apollon drag-and-drop feature flag by @FelixTJDietrich in #12580

Development

  • Remove non strict read write cache on actively-mutated collections by @krusche in #12579

New Contributors

Full Changelog: 9.1.0...9.1.1

9.1.0

23 Apr 05:42
0047e37

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Improvements

Bugfixes

Development

New Contributors

Full Changelog: 9.0.0...9.1.0

9.0.0

08 Apr 16:43
352441e

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Important information for administrators

  • Migration path: Version 9.0.0 is designed for fresh installations of Artemis or upgrades from version 8.8.6 only, due to significant database migration cleanups. All 66 incremental Liquibase changelogs from 8.x have been consolidated into a new initial schema.
  • AI services: When upgrading to 9.0.0, ensure to upgrade all Edutelligence services such as Pyris, Atlas, Athena etc. to version 2.0.0!
  • Nebula retired: The Nebula service (part of Edutelligence) has been retired. The features are now part of Pyris. Nebula deployments can be shut down and Nebula configuration should be removed.
  • Pre-deployment testing: We strongly recommend thoroughly testing this release in a test environment before deployment on production systems, as it includes extensive updates and breaking changes (see below).
  • Spring Boot 4 upgrade: The server has been upgraded from Spring Boot 3.5 to Spring Boot 4.0.5, along with Spring Framework 7, Spring Security 7, Hibernate 7.2, and Spring AI 2.0.0-M4. Server administrators should carefully review their application-prod.yml for any relocated or changed configuration keys.
  • Global Search: The new search is implemented as a runtime feature toggle that can be enabled via the admin panel or application-local.yml

Release highlights

🔍 Global Search

A new global search modal accessible via Cmd+K / Ctrl+K allows users to quickly search across exercises, lectures, and other content from anywhere in Artemis. An AI answer panel powered by Iris provides contextual answers alongside search results in a split view.

🏠 Redesigned Landing Page

A new public landing page greets unauthenticated visitors at the root URL, replacing the previous login-only view. The page showcases key features via a tabbed spotlight with demo videos, displays partner university logos, includes an expandable FAQ section, and provides clear call-to-action buttons. Authenticated users are automatically redirected to their dashboard.

🧠 Iris Chat UI Overhaul

The Iris AI assistant has received a comprehensive UI redesign: a new chat widget header with inline session switcher, redesigned thinking state with animated status feedback and a status indicator when minimized, redesigned chat items with entity display on the sidebar, improved summary bubbles, citation deep linking into the new PDF viewer, prompt scaffolding with suggestion chips for the empty state, and memory display showing used and created memories in chat. The lecture content processing pipeline has been fully migrated from Nebula to Pyris with capacity-aware dispatch, heartbeat-based stuck detection, and automatic re-queuing on Iris restart.

🎯 Iris Context Selection

Previously, opening a new chat on the dashboard initialized it with the entire course as context. Now, users can select a specific exercise or lecture as chat context through a new context selection interface, making Iris responses more targeted and relevant.

🧩 Iris In-Chat Quiz Generation

Students can now request AI-generated multiple-choice quiz questions directly within the Iris chat. Iris responds with an interactive MCQ carousel grounded in actual lecture content, supporting multi-question sets with score tracking, inline answering with correct/incorrect feedback and explanations, citation links back to lecture material, and response persistence across sessions. The server detects MCQ-formatted JSON in LLM responses and renders them as interactive components instead of plain text.

🤖 Autonomous Tutor Responses in Communication Channels

Iris can now proactively respond to student posts in course communication channels without requiring students to explicitly open the Iris chat. When enabled via the new AutonomousTutor feature toggle (disabled by default), a dedicated iris-bot user posts AI-generated replies directly into conversation threads. The AI autonomously decides whether to reply based on confidence. Reply forwarding respects AI consent preferences — posts from students who opted out are never forwarded, and their content in threads is redacted before being sent to Pyris.

✨ AI-Powered Exercise Creation (Hyperion)

Instructors can now create programming exercises with AI using a new "Generate with AI" button that initializes an empty repository (avoiding default template files as LLM context) and kicks off LLM-based code generation with progress tracking and repository selection. Hyperion also adds an AI-powered quality checklist panel to the problem statement editor that detects issues like vague wording, missing task structure, and unclear grading criteria, with one-click AI-generated fixes (individual, bulk, or multi-select). Additional checklist sections provide competency inference and difficulty assessment. Consistency issues are persisted as review comments.

📝 AI Quiz Generation

Instructors can generate quiz questions with AI via a dedicated modal in the quiz creation/edit view (requires Hyperion). The modal allows configuring topic, language, number of questions, question types (single-choice, multiple-choice, true/false), difficulty, and an optional prompt. Generated questions are previewed with Markdown rendering and can be appended to the quiz.

📄 PDF Viewer with Deep Linking

A new in-app PDF viewer displays lecture slides directly within Artemis when opening a lecture unit card with a PDF attachment. Deep linking is supported via URL query parameters, allowing Iris citation bubbles and other features to link directly to specific pages. The viewer includes zoom controls and a live page indicator.

🏗️ Build Plan Phases

A new phases-based build plan format for LocalCI. Each phase has a name, script, execution condition (e.g. always or only after the due date), and result paths. Instructors can edit, reorder, and configure phases through the UI. Existing configurations are automatically converted. Build success/failure determination is now phase-aware: phases with result paths expect test feedback, while phases without result paths use exit codes.

🏫 Exam Room Management

Exam room management is now accessible to instructors (previously admin-only) via the "Distribute" button on the exam Students page. The UI has been simplified and the room upload/management workflow is now co-located with student distribution for easier access.

📊 Improved Competency Management

The competency and prerequisite management tables now support client-side column sorting (Title, Taxonomy, Soft Due Date, Mastered Students), a live search/filter bar, and a "no results" row. A new bulk server endpoint returns course-level progress for all competencies in a single call instead of N individual requests. The standardized competency import has also been improved with better layout and client-side JSON validation.

👥 Collaborative Live Editing in Online Code Editor

Multiple instructors and editors can now concurrently edit code files in the online code editor (template, solution, tests, and auxiliary repositories) with conflict-free synchronization. The feature includes cursor awareness showing other users' positions, live file tree synchronization (create/delete/rename with rename resilience), and a new-commit alert notification when another user pushes changes while the editor is open.

🎓 Course Onboarding Wizard

A new 5-step guided onboarding wizard (General Settings, Enrollment, Communication, Assessment, Explore Artemis) helps instructors configure essential course settings immediately after creation. Progress is persisted on each step so it is not lost if the user navigates away. Courses that haven't completed onboarding auto-redirect instructors to the wizard. FAQ management is now always available, with student visibility based on whether accepted FAQs exist.

📝 Redesigned Exercise Participation & Management

The student exercise experience has been consolidated into a single split-panel interface using ExerciseSplitPanelComponent. Problem statement, editor/submission area, Iris chatbot, discussion, example solution, and complaints are all accessible without page navigation. New header components provide a unified exercise title with metadata, a result history dropdown for browsing previous submissions, and a participation mode toggle for switching between graded and practice modes. Practice mode with AI feedback (Athena) has been extended to text and modeling exercises. The instructor exercise management page has also been streamlined: shortened button labels, consolidated date and points columns, and visual status indicators replacing text.

🎨 Next-Generation Modeling Editor (Apollon)

The modeling editor has been completely redesigned from the ground up, introducing a modern architecture that significantly improves performance, scalability, and usability. The new editor delivers a much smoother and more responsive modeling experience, especially for large and complex diagrams. Interactions such as creating, editing, and navigating models are now faster and more intuitive, reducing friction for both students and instructors. Beyond performance, the rewrite lays the foundation for future innovation in modeling-based learning, enabling more advanced features and tighter integration with AI-driven feedback and assessment. The new editor is available directly within Artemis and can also be explored independently without an account:
👉 https://apollon.aet.cit.tum.de

Breaking Changes

Infrastructure & Configuration

  • ⚠️ Nebula removed: The Nebula transcription path for lecture content processing has been fully replaced by Pyris. See Pull Request #12459.
  • ⚠️ Spring Boot 4 upgrade: Major framework upgrade from Spring Boot 3.5 to...
Read more

8.8.6

21 Mar 19:45
f5c9623

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Development

Full Changelog: 8.8.5...8.8.6

8.8.5

18 Mar 19:58

Choose a tag to compare

⭐️ If you find Artemis valuable, please consider giving our GitHub project a star! ⭐️

Note: This update contains security improvements and should be installed.

Development

Full Changelog: 8.8.4...8.8.5