-
Notifications
You must be signed in to change notification settings - Fork 350
Tutorial groups: Allow ':' in tutor group title
#11632
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Tutorial groups: Allow ':' in tutor group title
#11632
Conversation
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
WalkthroughValidation regexes expanded: tutorial group title validation now accepts colon (:) in backend and frontend; user-facing messages (en/de) updated. Channel name validation (backend and frontend) likewise permits colons; backend also tightened error handling for feedback channels that start with Changes
Sequence Diagram(s)The changes are limited to regex patterns and validation messages; there are no control-flow or interaction changes, therefore no sequence diagram is provided. Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (11)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
az108
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code LGTM
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
…-should-be-able-to-contain-colon-symbol
End-to-End (E2E) Test Results Summary |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested on ts9, titles identify * as an invalid character and allow colons in title.
However, I noticed that the title shows an error when it starts with a space, dash or colon. Not sure if this intentional.
FullbusterSteve
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested this PR on TS9.
Everything works as expected.
anian03
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
…-should-be-able-to-contain-colon-symbol
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
LeZhen1105
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good
a58e8d3
…-should-be-able-to-contain-colon-symbol
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
src/main/webapp/app/communication/course-conversations-components/dialogs/channels-create-dialog/channel-form/channel-form.component.ts (1)
18-18: Regex update correctly allows colon; confirm first-character rule and consider length alignmentThe updated
channelRegex(^[a-z0-9-]{1}[a-z0-9:\\-]{0,30}$) correctly adds support for:in the trailing characters while keeping the first character restricted to[a-z0-9-]. This means names likeg1:abcare valid, but:abcis still rejected. If that’s the intended behavior (i.e., channel names must still start with a letter/number/dash), this change looks good.Separately, since you’re touching validation here, note that:
- The regex allows up to 31 characters (1 + 0–30),
- While the form control also has
Validators.maxLength(20).That length mismatch is pre-existing but might be worth harmonizing at some point to keep validation rules easier to reason about.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
src/main/java/de/tum/cit/aet/artemis/communication/service/conversation/ChannelService.java(13 hunks)src/main/webapp/app/communication/course-conversations-components/dialogs/channels-create-dialog/channel-form/channel-form.component.ts(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- src/main/java/de/tum/cit/aet/artemis/communication/service/conversation/ChannelService.java
🧰 Additional context used
📓 Path-based instructions (1)
src/main/webapp/**/*.ts
⚙️ CodeRabbit configuration file
Files:
src/main/webapp/app/communication/course-conversations-components/dialogs/channels-create-dialog/channel-form/channel-form.component.ts
🧠 Learnings (2)
📚 Learning: 2024-10-29T12:28:57.305Z
Learnt from: SimonEntholzer
Repo: ls1intum/Artemis PR: 9478
File: src/main/webapp/app/shared/user-settings/ssh-settings/details/ssh-user-settings-key-details.component.ts:104-111
Timestamp: 2024-10-29T12:28:57.305Z
Learning: In `ssh-user-settings-key-details.component.ts`, changing the error handling code by adding optional chaining (`?.`) and replacing `.indexOf()` with `.includes()` may alter semantics and should be avoided.
Applied to files:
src/main/webapp/app/communication/course-conversations-components/dialogs/channels-create-dialog/channel-form/channel-form.component.ts
📚 Learning: 2024-11-02T22:57:57.717Z
Learnt from: florian-glombik
Repo: ls1intum/Artemis PR: 9656
File: src/main/webapp/app/lecture/lecture-unit/lecture-unit-management/attachment-unit-form/attachment-unit-form.component.ts:69-71
Timestamp: 2024-11-02T22:57:57.717Z
Learning: In the `src/main/webapp/app/lecture/lecture-unit/lecture-unit-management/attachment-unit-form/attachment-unit-form.component.ts`, the `isFormValid` computed property intentionally uses a logical OR between `this.statusChanges() === 'VALID'` and `this.fileName()` to mirror the original `isSubmitPossible` getter, ensuring consistent form validation behavior.
Applied to files:
src/main/webapp/app/communication/course-conversations-components/dialogs/channels-create-dialog/channel-form/channel-form.component.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (10)
- GitHub Check: server-style
- GitHub Check: client-tests-selected
- GitHub Check: client-style
- GitHub Check: client-tests
- GitHub Check: Codacy Static Code Analysis
- GitHub Check: Build and Push Docker Image / Build linux/arm64 Docker Image for ls1intum/artemis
- GitHub Check: Build and Push Docker Image / Build linux/amd64 Docker Image for ls1intum/artemis
- GitHub Check: Build .war artifact
- GitHub Check: Analyse
- GitHub Check: bean-instantiation-check
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||||||||||||||
HawKhiem
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good 👍
…-should-be-able-to-contain-colon-symbol
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||||||||||||||||||||||||||||||||
…-should-be-able-to-contain-colon-symbol
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||||||||||||||








Checklist
General
Client
Motivation and Context
Previously, the input validation for tutor group title restricted certain characters, such as colons (:), which are commonly used to indicate time ranges or schedules (e.g., "G1 Mo 12:00-13:00").
Description
Steps for Testing
Prerequisites:
Testserver States
You can manage test servers using Helios. Check environment statuses in the environment list. To deploy to a test server, go to the CI/CD page, find your PR or branch, and trigger the deployment.
Review Progress
Code Review
Manual Tests
Screenshots
Before:
New error message:
Entering ":" doesn't throw an error anymore:
Summary by CodeRabbit
New Features
Documentation
Bug Fixes
✏️ Tip: You can customize this high-level summary in your review settings.