Conversation
WalkthroughThe pull request overhauls the GitHub issue template system by removing legacy markdown templates and introducing new YAML-based templates for bug reports, documentation issues, and feature requests. Additionally, a configuration file has been added to disable blank issues and provide contact links for various concerns. No changes were made to exported or public entities. Changes
Sequence Diagram(s)sequenceDiagram
participant U as User
participant GH as GitHub UI
participant Repo as Repository
U->>GH: Click "New Issue"
GH->>Repo: Retrieve issue template config and templates
Repo-->>GH: Return YAML templates (Bug, Documentation, Feature)
U->>GH: Select desired template and fill in details
U->>GH: Submit issue
GH->>Repo: Create issue with provided details
Repo-->>GH: Confirm issue creation
Poem
Tip ⚡🧪 Multi-step agentic review comment chat (experimental)
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
❌ Preview Environment deleted from BunnyshellAvailable commands:
|
4e6f97c to
40674da
Compare
40674da to
f277ba8
Compare
There was a problem hiding this comment.
Caution
Inline review comments failed to post. This is likely due to GitHub's limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.
Actionable comments posted: 2
🧹 Nitpick comments (2)
.github/ISSUE_TEMPLATE/3_Documentation_issue.yaml (1)
5-16: Dropdown Field is Well-Structured
The dropdown for selecting the documentation version is clear. One point to verify: themultiple: truesetting allows users to select more than one version. If the intention is to allow a single selection, consider setting this tofalseor removing it..github/ISSUE_TEMPLATE/1_Bug_report.yaml (1)
20-29: How-to-Reproduce Field Needs Minor Trailing Whitespace Cleanup
The "How to reproduce" section is detailed and underscores the importance of providing reproducible steps. However, static analysis has flagged trailing whitespace on line 26. Removing the extra space will enhance file consistency.- We’ll have a much better chance of helping if we can easily reproduce the issue. + We’ll have a much better chance of helping if we can easily reproduce the issue.🧰 Tools
🪛 YAMLlint (1.35.1)
[error] 26-26: trailing spaces
(trailing-spaces)
🛑 Comments failed to post (2)
src/Sylius/Bundle/ShopBundle/templates/shared/layout/base/header/navbar/menu.html.twig (1)
12-12: 💡 Verification agent
🧩 Analysis chain
Hook identifier simplified from 'sylius_shop.base.header.navbar.menu' to 'menu'
The hook identifier has been simplified to just 'menu'. This appears to be part of a broader effort to simplify hook names across templates, as mentioned in the summary. While this improves readability, ensure that all hook listeners have been updated to respond to this new identifier to maintain functionality.
🏁 Script executed:
#!/bin/bash # Check if there are any references to the old hook name that might break grep -r "sylius_shop\.base\.header\.navbar\.menu" --include="*.php" --include="*.yaml" --include="*.xml" .Length of output: 492
Update Hook Listeners in Configuration Files
The template now uses
{% hook 'menu' with { taxons } %}to simplify the hook identifier. However, the grep output shows that configuration files (notably insrc/Sylius/Bundle/ShopBundle/Resources/config/app/twig_hooks/base.yaml) still reference the old identifier (sylius_shop.base.header.navbar.menu), along with related keys for dropdowns and links. To prevent broken functionality, please update these hook listener identifiers to use the new simplified name ("menu") in all relevant configuration files.
- File to update:
src/Sylius/Bundle/ShopBundle/Resources/config/app/twig_hooks/base.yaml
- Change keys like:
'sylius_shop.base.header.navbar.menu'→'menu'- And update related keys accordingly, if needed.
src/Sylius/Bundle/ReviewBundle/EventListener/ReviewChangeListener.php (1)
21-24:
⚠️ Potential issueClass-level and property-level
readonlymodifiers are inconsistentThe
$averageRatingUpdaterproperty is modified to be mutable (by removingreadonly), but the class itself is still declared asreadonly. This inconsistency could lead to unexpected behavior, as areadonlyclass shouldn't have mutable properties.Either make the class non-readonly or keep the property as readonly:
-final readonly class ReviewChangeListener +final class ReviewChangeListener { public function __construct(private ReviewableRatingUpdaterInterface $averageRatingUpdater)OR
final readonly class ReviewChangeListener { - public function __construct(private ReviewableRatingUpdaterInterface $averageRatingUpdater) + public function __construct(private readonly ReviewableRatingUpdaterInterface $averageRatingUpdater)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.final readonly class ReviewChangeListener { public function __construct(private readonly ReviewableRatingUpdaterInterface $averageRatingUpdater) {
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (11)
.github/ISSUE_TEMPLATE.md(0 hunks).github/ISSUE_TEMPLATE/1_Bug_report.yaml(1 hunks).github/ISSUE_TEMPLATE/2_Feature_request.yaml(1 hunks).github/ISSUE_TEMPLATE/3_Documentation_issue.yaml(1 hunks).github/ISSUE_TEMPLATE/bug-report.md(0 hunks).github/ISSUE_TEMPLATE/config.yaml(1 hunks).github/ISSUE_TEMPLATE/documentation-issue.md(0 hunks).github/ISSUE_TEMPLATE/feature-request.md(0 hunks).github/ISSUE_TEMPLATE/security-issue.md(0 hunks).github/ISSUE_TEMPLATE/support-question.md(0 hunks).github/ISSUE_TEMPLATE/translations.md(0 hunks)
💤 Files with no reviewable changes (7)
- .github/ISSUE_TEMPLATE/bug-report.md
- .github/ISSUE_TEMPLATE/feature-request.md
- .github/ISSUE_TEMPLATE.md
- .github/ISSUE_TEMPLATE/documentation-issue.md
- .github/ISSUE_TEMPLATE/support-question.md
- .github/ISSUE_TEMPLATE/translations.md
- .github/ISSUE_TEMPLATE/security-issue.md
🚧 Files skipped from review as they are similar to previous changes (3)
- .github/ISSUE_TEMPLATE/3_Documentation_issue.yaml
- .github/ISSUE_TEMPLATE/2_Feature_request.yaml
- .github/ISSUE_TEMPLATE/config.yaml
🧰 Additional context used
🪛 YAMLlint (1.35.1)
.github/ISSUE_TEMPLATE/1_Bug_report.yaml
[error] 26-26: trailing spaces
(trailing-spaces)
⏰ Context from checks skipped due to timeout of 90000ms (9)
- GitHub Check: End-to-end tests (PostgreSQL) / Non-JS, PHP 8.3, Symfony ^7.1, PostgreSQL 16.4
- GitHub Check: End-to-end tests (MariaDB) / Non-JS, PHP 8.2, Symfony ^6.4, MariaDB 10.11.9, State Machine Adapter symfony_workflow
- GitHub Check: Packages / PHP 8.2, Symfony ^6.4
- GitHub Check: End-to-end tests (MySQL) / JS with Panther, PHP 8.3, Symfony ^7.1 (test_cached), MySQL 8.4, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / JS with Panther, PHP 8.2, Symfony ^6.4 (test_cached), MySQL 8.0, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / JS with Chromedriver, PHP 8.3, Symfony ^7.1 (test_cached), MySQL 8.4, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / JS with Chromedriver, PHP 8.2, Symfony ^6.4 (test_cached), MySQL 8.0, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / Non-JS, PHP 8.3, Symfony ^7.1 (test_cached), MySQL 8.4, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / Non-JS, PHP 8.2, Symfony ^6.4 (test_cached), MySQL 8.0, Twig ^3.3
🔇 Additional comments (6)
.github/ISSUE_TEMPLATE/1_Bug_report.yaml (6)
1-4: File Header and Metadata: Looks Good!The header clearly defines the bug report template with a descriptive name, a cautionary description regarding security issues, and an appropriate label.
5-12: Input Field ("affected-versions") is Properly Configured.The "affected-versions" input field is well-structured with clear labels, a placeholder, and a required validation.
13-19: Description Field is Correctly Specified.The description field uses a textarea type with clear labeling and a concise prompt, and it is correctly marked as required.
20-29: "How to Reproduce" Field is Informative and Well-Formatted.The "How to reproduce" textarea provides detailed instructions with a multiline description and is marked as required. Ensure that the extra whitespace noted by YAMLlint is removed (see next comment).
🧰 Tools
🪛 YAMLlint (1.35.1)
[error] 26-26: trailing spaces
(trailing-spaces)
30-37: "Possible Solution" Field is Well-Documented.This optional field encourages users to suggest fixes and includes a helpful multiline description.
38-41: "Additional Context" Field is Appropriately Configured.The additional context field is optional and provides a clear prompt for extra information (e.g., log messages or screenshots).
2f2633c to
511be25
Compare
511be25 to
8b15207
Compare
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
.github/ISSUE_TEMPLATE/config.yaml (1)
15-15: Final Newline RecommendationEnsure that the file ends with a trailing newline for maximum compatibility with various editors and tooling.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
.github/ISSUE_TEMPLATE/1_Bug_report.yaml(1 hunks).github/ISSUE_TEMPLATE/2_Documentation_issue.yaml(1 hunks).github/ISSUE_TEMPLATE/3_Feature_request.yaml(1 hunks).github/ISSUE_TEMPLATE/config.yaml(1 hunks)
✅ Files skipped from review due to trivial changes (2)
- .github/ISSUE_TEMPLATE/3_Feature_request.yaml
- .github/ISSUE_TEMPLATE/2_Documentation_issue.yaml
⏰ Context from checks skipped due to timeout of 90000ms (13)
- GitHub Check: End-to-end tests (MySQL) / JS with Chromedriver, PHP 8.3, Symfony ^7.1 (test_cached), MySQL 8.4, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / JS with Panther, PHP 8.3, Symfony ^7.1 (test_cached), MySQL 8.4, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / JS with Chromedriver, PHP 8.2, Symfony ^6.4 (test_cached), MySQL 8.0, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / JS with Panther, PHP 8.2, Symfony ^6.4 (test_cached), MySQL 8.0, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / Non-JS, PHP 8.3, Symfony ^7.1 (test_cached), MySQL 8.4, Twig ^3.3
- GitHub Check: End-to-end tests (MySQL) / Non-JS, PHP 8.2, Symfony ^6.4 (test_cached), MySQL 8.0, Twig ^3.3
- GitHub Check: End-to-end tests (MariaDB) / Non-JS, PHP 8.3, Symfony ^7.1, MariaDB 11.4.3, State Machine Adapter winzou_state_machine
- GitHub Check: End-to-end tests (MariaDB) / Non-JS, PHP 8.3, Symfony ^7.1, MariaDB 11.4.3, State Machine Adapter symfony_workflow
- GitHub Check: End-to-end tests (MariaDB) / Non-JS, PHP 8.2, Symfony ^6.4, MariaDB 10.11.9, State Machine Adapter symfony_workflow
- GitHub Check: Packages / PHP 8.3, Symfony ^7.1
- GitHub Check: Packages / PHP 8.2, Symfony ^6.4
- GitHub Check: End-to-end tests (PostgreSQL) / Non-JS, PHP 8.3, Symfony ^7.1, PostgreSQL 16.4
- GitHub Check: End-to-end tests (PostgreSQL) / Non-JS, PHP 8.2, Symfony ^6.4, PostgreSQL 15.8
🔇 Additional comments (11)
.github/ISSUE_TEMPLATE/1_Bug_report.yaml (6)
1-3: Descriptive Header and MetadataThe header clearly identifies the template as a bug report with an expressive name, description, and label. Please double-check for any trailing whitespace (especially on these lines) to ensure YAML linting passes.
5-12: Affected Versions Field is Well-DefinedThe input field for affected Sylius versions is clearly structured with a label, placeholder, and proper validation. This helps ensure that reporters supply essential version information.
13-19: Clear Description FieldThe description textarea provides concise instructions and correctly enforces required input. This makes it easier for users to articulate the problem.
20-29: Informative 'How to Reproduce' SectionThis section clearly emphasizes the importance of providing reproducible steps. Please ensure that no extraneous trailing whitespace exists within the indented text (for example, around line 26) as noted in previous reviews.
30-36: Optional 'Possible Solution' FieldThe optional textarea for a possible solution is well-structured and encourages contributors to share ideas for a fix. The guidance is clear and user-friendly.
37-41: Additional Context Field Adds ValueThe additional context field is thoughtfully designed to capture extra details such as log messages or screenshots. Its clarity and optional nature enhance the overall issue-reporting process.
.github/ISSUE_TEMPLATE/config.yaml (5)
1-1: Blank Issues Disabled CorrectlyDisabling blank issues is a positive configuration choice to ensure that submissions contain useful information.
2-5: Sylius Plus Contact Link is ClearThe first contact link is well integrated with a descriptive name, URL, and helpful "about" information guiding users toward Sylius Plus features.
6-8: Proper Handling of Security IssuesThe security issue link appropriately directs users to review the security reporting guidelines and avoids public disclosures. This clear guidance is essential.
9-11: Support Question Guidance is On-PointThe support question entry distinguishes between reporting issues and seeking help with usage questions. The provided URL and explanatory text are clear and concise.
12-14: Translations Link is Well-DefinedThe translations contact link provides a direct route for contributors to add or correct translations in Sylius. Consider ensuring consistent quoting (if necessary) for URLs, although the current format appears acceptable.
Inspired by Symfony.
Summary by CodeRabbit
New Features
Chores