-
-
Notifications
You must be signed in to change notification settings - Fork 6
adding program #422
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
adding program #422
Conversation
Added the 237th Roslyn Source Code Generator example: Program (Microsoft.AspNetCore.OpenApi) by Microsoft, including documentation, metadata, and example files. Updated category assignments, counts, and listings across CSV, JSON, markdown, and site documentation to reflect the new generator. Adjusted CommandLine and Console category assignments for CommandLine and ConsoleAppFramework generators.
|
Note Other AI code review bot(s) detectedCodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review. WalkthroughThis PR adds a new Program example (entry 237), updates counts from 236→237 and Microsoft examples from 14→15, reassigns several categories (ConsoleAppFramework/CommandLine), and introduces a full Program example project with docs, site metadata, generator data, and tour/video assets. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Browser as Browser/Client
participant App as TestProgram (ASP.NET Core)
Note over App: Minimal Todo API (in-memory sample)
Browser->>App: GET /todos
App-->>Browser: 200 OK (Todo[] JSON)
Browser->>App: GET /todos/1
alt found
App-->>Browser: 200 OK (Todo JSON)
else not found
App-->>Browser: 404 Not Found
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~50 minutes
Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
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 |
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: 6
🧹 Nitpick comments (5)
v2/rscg_examples/Program/readme.txt (1)
18-18: Minor: Improve writing clarity.Consider changing "give feedback" to "provide feedback" for clearer, more professional language.
v2/rscg_examples_site/docs/RSCG-Examples/Program.md (1)
154-157: Replace hard tabs with spaces.Lines 154-157 contain hard tabs, which can cause inconsistent rendering across different editors and platforms. Use spaces for indentation in markdown files.
Apply this diff to replace tabs with spaces:
- <PropertyGroup> - <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles> - <CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath> - </PropertyGroup> + <PropertyGroup> + <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles> + <CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath> + </PropertyGroup>As per static analysis hints.
v2/rscg_examples/Program/video.json (1)
20-21: Likely wrong CodeTour path; make it relative to the opened folder.You open VS Code at “v2” (Line 20). The tour path “src/.tours/” (Line 29) probably won’t resolve if the file is at “v2/.tours/Program.tour”. Use “.tours/”.
-{"typeStep":"tour", "arg": "src/.tours/"}, +{"typeStep":"tour", "arg": ".tours/"},Also applies to: 29-29
v2/rscg_examples_site/docs/indexRSCG.md (1)
23-23: Fix markdown link text formatting violations.Static analysis flagged MD039 violations (spaces inside link text) on lines 23, 28, 152, and 281. While this formatting appears consistent with the file's existing style, it violates linting rules. Apply this diff to align with markdown best practices:
-|237| [Program by Microsoft ](/docs/Program)|2025-11-06 => 06 November 2025 | [EnhancementClass](/docs/Categories/EnhancementClass) | +|237| [Program by Microsoft](/docs/Program)|2025-11-06 => 06 November 2025 | [EnhancementClass](/docs/Categories/EnhancementClass) | -|232| [ConsoleAppFramework by Cysharp, Inc. ](/docs/ConsoleAppFramework)|2025-10-02 => 02 October 2025 | [CommandLine](/docs/Categories/CommandLine) | +|232| [ConsoleAppFramework by Cysharp, Inc.](/docs/ConsoleAppFramework)|2025-10-02 => 02 October 2025 | [CommandLine](/docs/Categories/CommandLine) | -|108| [CommandLine by DotMake ](/docs/CommandLine)|2024-02-11 => 11 February 2024 | [CommandLine](/docs/Categories/CommandLine) | +|108| [CommandLine by DotMake](/docs/CommandLine)|2024-02-11 => 11 February 2024 | [CommandLine](/docs/Categories/CommandLine) | -|237| [Program by Microsoft ](/docs/Program)|2025-11-06 => 06 November 2025 | EnhancementClass | +|237| [Program by Microsoft](/docs/Program)|2025-11-06 => 06 November 2025 | EnhancementClass |Also applies to: 28-28, 152-152, 281-281
v2/rscg_examples/Program/src/TestProgram/Program.cs (1)
44-48: Correct source generation setup.The
AppJsonSerializerContextis properly configured with theJsonSerializableattribute forTodo[], enabling the source generator to create optimized serialization code. The partial class and empty body are correct—the source generator fills in the implementation.Optional formatting nit: Line 47 contains an unnecessary blank line that could be removed for consistency.
[JsonSerializable(typeof(Todo[]))] internal partial class AppJsonSerializerContext : JsonSerializerContext { - }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
v2/Generator/all.csvis excluded by!**/*.csvv2/rscg_examples_site/static/exports/RSCG.xlsxis excluded by!**/*.xlsx
📒 Files selected for processing (29)
README.md(4 hunks)later.md(1 hunks)v2/.tours/Program.tour(1 hunks)v2/RSCGExamplesData/GeneratorDataRec.json(1 hunks)v2/rscg_examples/Program/description.json(1 hunks)v2/rscg_examples/Program/nuget.txt(1 hunks)v2/rscg_examples/Program/readme.txt(1 hunks)v2/rscg_examples/Program/src/TestProgram.slnx(1 hunks)v2/rscg_examples/Program/src/TestProgram/Program.cs(1 hunks)v2/rscg_examples/Program/src/TestProgram/Properties/launchSettings.json(1 hunks)v2/rscg_examples/Program/src/TestProgram/TestProgram.csproj(1 hunks)v2/rscg_examples/Program/src/TestProgram/TestProgram.http(1 hunks)v2/rscg_examples/Program/src/TestProgram/appsettings.Development.json(1 hunks)v2/rscg_examples/Program/src/TestProgram/appsettings.json(1 hunks)v2/rscg_examples/Program/video.json(1 hunks)v2/rscg_examples_site/docs/Categories/CommandLine.md(1 hunks)v2/rscg_examples_site/docs/Categories/Console.md(1 hunks)v2/rscg_examples_site/docs/Categories/EnhancementClass.md(2 hunks)v2/rscg_examples_site/docs/Categories/EnhancementProject.md(2 hunks)v2/rscg_examples_site/docs/Categories/_PrimitiveCommandLine.mdx(1 hunks)v2/rscg_examples_site/docs/Categories/_PrimitiveConsole.mdx(1 hunks)v2/rscg_examples_site/docs/Categories/_PrimitiveEnhancementClass.mdx(1 hunks)v2/rscg_examples_site/docs/Categories/_PrimitiveEnhancementProject.mdx(1 hunks)v2/rscg_examples_site/docs/RSCG-Examples/Program.md(1 hunks)v2/rscg_examples_site/docs/RSCG-Examples/index.md(6 hunks)v2/rscg_examples_site/docs/about.md(1 hunks)v2/rscg_examples_site/docs/indexRSCG.md(5 hunks)v2/rscg_examples_site/src/components/HomepageFeatures/index.js(1 hunks)v2/rscg_examples_site/static/exports/RSCG.json(3 hunks)
🧰 Additional context used
🪛 Biome (2.1.2)
v2/rscg_examples/Program/video.json
[error] 35-36: Property key must be double quoted
(parse)
[error] 36-36: unexpected character =
(parse)
[error] 36-36: expected , but instead found " "
Remove " "
(parse)
[error] 36-36: expected : but instead found }
Remove }
(parse)
[error] 37-38: Expected an array, an object, or a literal but instead found ']'.
Expected an array, an object, or a literal here.
(parse)
🪛 LanguageTool
v2/rscg_examples/Program/readme.txt
[style] ~18-~18: Try using a synonym here to strengthen your writing.
Context: ...ues. ## How to engage, contribute, and give feedback Some of the best ways to cont...
(GIVE_PROVIDE)
v2/rscg_examples_site/docs/RSCG-Examples/Program.md
[style] ~71-~71: Try using a synonym here to strengthen your writing.
Context: ...ues. ## How to engage, contribute, and give feedback Some of the best ways to cont...
(GIVE_PROVIDE)
🪛 markdownlint-cli2 (0.18.1)
README.md
42-42: Bare URL used
(MD034, no-bare-urls)
v2/rscg_examples_site/docs/RSCG-Examples/Program.md
31-31: Bare URL used
(MD034, no-bare-urls)
36-36: Bare URL used
(MD034, no-bare-urls)
39-39: Bare URL used
(MD034, no-bare-urls)
41-41: Bare URL used
(MD034, no-bare-urls)
54-54: Heading style
Expected: atx; Actual: setext
(MD003, heading-style)
78-78: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
79-79: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
93-93: Bare URL used
(MD034, no-bare-urls)
104-104: Link text should be descriptive
(MD059, descriptive-link-text)
104-104: Link text should be descriptive
(MD059, descriptive-link-text)
154-154: Hard tabs
Column: 1
(MD010, no-hard-tabs)
155-155: Hard tabs
Column: 1
(MD010, no-hard-tabs)
156-156: Hard tabs
Column: 1
(MD010, no-hard-tabs)
157-157: Hard tabs
Column: 1
(MD010, no-hard-tabs)
247-247: Spaces inside link text
(MD039, no-space-in-links)
261-261: Bare URL used
(MD034, no-bare-urls)
v2/rscg_examples_site/docs/indexRSCG.md
23-23: Spaces inside link text
(MD039, no-space-in-links)
24-24: Spaces inside link text
(MD039, no-space-in-links)
25-25: Spaces inside link text
(MD039, no-space-in-links)
26-26: Spaces inside link text
(MD039, no-space-in-links)
27-27: Spaces inside link text
(MD039, no-space-in-links)
28-28: Spaces inside link text
(MD039, no-space-in-links)
152-152: Spaces inside link text
(MD039, no-space-in-links)
281-281: Spaces inside link text
(MD039, no-space-in-links)
⏰ 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). (3)
- GitHub Check: CodeQL analysis (javascript-typescript)
- GitHub Check: CodeQL analysis (csharp)
- GitHub Check: call-workflow-passing-data / build (24.3.0)
🔇 Additional comments (33)
v2/rscg_examples_site/docs/about.md (1)
8-10: Count update aligned with new exampleLine 9 now states 237 RSCG examples, which matches the new Program entry and the updated totals elsewhere in the PR. No further changes needed here.
later.md (1)
3-3: “Latest Update” date is consistentLine 3’s date (2025-11-06 => 06 November 2025) is consistent with the new Program entry’s start date in the data files. Looks good.
v2/RSCGExamplesData/GeneratorDataRec.json (1)
1431-1437: NewProgramgenerator record is well-formedThe added
Programentry (Line 1433–Line 1437) has valid JSON syntax, usesCategory5 (matching the EnhancementClass documentation), and adtStartaligned with the latest update date. No structural issues spotted.v2/rscg_examples/Program/src/TestProgram/appsettings.Development.json (1)
1-8: Development logging configuration is sensibleThe logging levels (Line 2–Line 6) follow typical ASP.NET Core defaults for development (Informational app logs, ASP.NET Core at Warning). This is appropriate for a sample and needs no changes.
v2/rscg_examples_site/docs/Categories/_PrimitiveEnhancementClass.mdx (1)
39-57: Program correctly wired into EnhancementClass category listLines 39–57 insert
Programat position 19 and shift subsequent generators while keeping numbering consistent, and addThisClassat position 28. The links and ordering look coherent with the category’s intent.v2/rscg_examples/Program/src/TestProgram/TestProgram.http (1)
1-11: HTTP requests match the described API surfaceThe HTTP file defines a host variable and two GET requests to
/todos/and/todos/1with JSON Accept headers (Line 1–Line 9), which aligns with the minimal API endpoints described for this sample. This should work smoothly with the provided launch settings.v2/rscg_examples/Program/src/TestProgram/TestProgram.csproj (1)
1-18: Project configuration is consistent with an AOT + generator sampleThe project file (Line 1–Line 18) is a clean minimal web setup with nullable enabled, AOT publishing, and compiler-generated files redirected for inspection, which fits the RSCG example pattern. Nothing problematic stands out here.
v2/rscg_examples/Program/src/TestProgram.slnx (1)
1-3: Solution descriptor correctly references the new projectThe
.slnxfile (Line 1–Line 3) cleanly references the TestProgram project and is sufficient for tooling that understands this format. No changes needed.v2/rscg_examples/Program/description.json (1)
1-26: Well-structured metadata.The JSON is properly formatted with accurate generator information, appropriate metadata, and correct exclusions for generated namespace filtering.
v2/rscg_examples_site/docs/Categories/_PrimitiveEnhancementProject.mdx (1)
1-41: Documentation links properly reorganized.The reordering reflects the category reorganization described in the PR. Entries are consistent with corresponding changes in EnhancementProject.md and related category files.
v2/rscg_examples/Program/src/TestProgram/Properties/launchSettings.json (1)
1-15: Standard launch configuration looks good.The settings are appropriate for a development Web API example, with browser launch at the todos endpoint and Development environment variables properly configured.
v2/rscg_examples_site/docs/Categories/EnhancementProject.md (1)
1-41: Category count and ordering consistent.The update from the previous count to 19 items and the reordered entries properly reflect the category reorganization across the PR. Documentation links match the primitive file changes.
v2/rscg_examples_site/docs/Categories/_PrimitiveCommandLine.mdx (1)
1-11: CommandLine category properly updated with new entries.The addition of CommandLine and ConsoleAppFramework to this category, bringing the count to 3, aligns with the PR's category reorganization objective.
v2/rscg_examples_site/docs/Categories/CommandLine.md (1)
1-10: CommandLine category count updated correctly.The count now reflects 3 entries (from 1 previously), with CommandLine and ConsoleAppFramework properly listed. Consistent with primitive file changes and the category reorganization.
v2/rscg_examples/Program/src/TestProgram/appsettings.json (1)
1-9: Standard development configuration.Logging levels are appropriately set for a development example, and the permissive AllowedHosts setting is acceptable for example code.
v2/rscg_examples_site/docs/Categories/_PrimitiveConsole.mdx (1)
3-3: LGTM! Consistent category reorganization.The update correctly renumbers Figgle to position 1 after removing ConsoleAppFramework from the Console category.
v2/rscg_examples_site/src/components/HomepageFeatures/index.js (1)
7-7: LGTM! Accurate count update.The title correctly reflects the addition of the new Program example, bringing the total to 237 examples with 15 from Microsoft.
v2/rscg_examples_site/docs/Categories/Console.md (1)
3-5: LGTM! Correct category count and numbering.The Console category correctly reflects 1 remaining RSCG after removing ConsoleAppFramework, with Figgle properly renumbered.
v2/rscg_examples/Program/nuget.txt (1)
1-3: LGTM! Clear package description.The file provides accurate information about the Microsoft.AspNetCore.OpenApi package with proper source attribution.
v2/rscg_examples_site/docs/Categories/EnhancementClass.md (2)
3-3: LGTM! Correct category count update.The total count correctly reflects 28 RSCG entries in the EnhancementClass category after adding Program.
41-59: LGTM! Proper insertion and renumbering.The new Program entry is correctly inserted at position 19, with all subsequent items properly renumbered to maintain sequential ordering.
v2/.tours/Program.tour (1)
14-16: Verify the pattern in step 2.The pattern
"this is the code"doesn't appear in Program.cs. CodeTour patterns help navigate to specific code locations, so a non-matching pattern may prevent proper highlighting.Consider using a pattern that exists in Program.cs, such as
"WebApplication.CreateSlimBuilder"or"MapGroup".v2/rscg_examples_site/docs/RSCG-Examples/index.md (1)
256-272: Counts and diagram look aligned; nice reclassification.CommandLine/Console counts and the mermaid edges for CommandLine/Program match the lists. Please re-run the site export to ensure the totals (237/28/19) stay consistent with static exports and nav.
Also applies to: 278-284, 463-604, 1671-1672
v2/rscg_examples_site/static/exports/RSCG.json (3)
862-868: Verify category reassignment for CommandLine entry.The category update from "EnhancementProject" to "CommandLine" (Line 866) is consistent with the markdown updates. Ensure this categorization aligns with the entry's intended purpose and doesn't break any upstream dependencies or queries that relied on the prior "EnhancementProject" classification.
1854-1860: Verify category reassignment for ConsoleAppFramework entry.The category update from "Console" to "CommandLine" (Line 1858) is consistent with the markdown updates. Ensure downstream consumers and category filters handle this transition correctly.
1893-1900: NuGet package link is correct and intentional—no issue found.The documentation confirms that Microsoft.AspNetCore.OpenApi is the correct NuGet package. While the package's primary purpose is OpenAPI documentation generation, it includes the
PublicTopLevelProgramGeneratorsource generator that creates a public partialProgramclass for top-level statement apps. The entry title "Program" refers to this RSCG component within the package. The documentation explicitly references the source generator (PublicProgramSourceGenerator/PublicTopLevelProgramGenerator) and shows generated output, confirming this is a legitimate RSCG catalog entry.v2/rscg_examples_site/docs/indexRSCG.md (2)
10-12: Totals updated correctly for new Program entry.Count increments from 236 to 237 total RSCG, and from 14 to 15 Microsoft entries, are consistent and accurate.
23-23: AI summary inconsistency flagged.The AI summary claims two duplicate "Program" entries were added to the JSON export with identical properties. However, the actual JSON (lines 1893–1900) contains exactly one Program entry. The markdown also reflects a single Program entry at position 237. Verify the summary generation; this discrepancy may indicate a summarization error.
v2/rscg_examples/Program/src/TestProgram/Program.cs (5)
1-12: Excellent setup for a minimal API with source-generated JSON serialization!The use of
CreateSlimBuildercombined with configuringAppJsonSerializerContextfor source-generated serialization demonstrates modern best practices for performance and AOT/trim compatibility. The OpenAPI integration is also correctly configured.
14-19: LGTM!Correctly restricts OpenAPI mapping to the development environment, which is a security best practice.
21-28: LGTM!The sample data uses modern collection expressions and provides good variety for demonstrating the API endpoints.
30-38: LGTM!The endpoint implementation demonstrates excellent modern ASP.NET Core patterns:
- Route grouping for organization
- Typed results (
Results<Ok<Todo>, NotFound>) for better OpenAPI documentation- Pattern matching with FirstOrDefault for concise null handling
- Named endpoints for link generation support
42-42: LGTM!The Todo record uses modern C# syntax with positional parameters and sensible defaults.
| This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436 | ||
|
|
||
| Nuget: [https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi](https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi) |
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.
Replace bare URL with a proper Markdown link (lint: MD034).
Avoid bare URLs to satisfy markdownlint.
-This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436
+This package was built from the source code at [github.com/dotnet/aspnetcore/tree/e77cb01](https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436)📝 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.
| This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436 | |
| Nuget: [https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi](https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi) | |
| This package was built from the source code at [github.com/dotnet/aspnetcore/tree/e77cb01](https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436) | |
| Nuget: [https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi](https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi) |
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
42-42: Bare URL used
(MD034, no-bare-urls)
🤖 Prompt for AI Agents
In README.md around lines 42 to 44, a bare URL
(https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436)
is used which violates markdownlint MD034; replace the bare URL with a proper
Markdown link (e.g., provide descriptive link text and wrap the URL in
parentheses) so the GitHub source is presented as [Repository or descriptive
text](https://github.com/...) rather than a raw URL, leaving the existing NuGet
markdown link unchanged.
|
|
||
| </TabItem> | ||
|
|
||
| <TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\Program.cs" label="Program.cs" > |
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.
Remove absolute Windows path from tab label.
The tab label contains an absolute Windows file system path (D:\gth\RSCG_Examples\...), which:
- Exposes local development environment details
- Is not portable across different systems
- Is inconsistent with documentation standards
Apply this diff to use a relative path:
- <TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\Program.cs" label="Program.cs" >
+ <TabItem value="Program.cs" label="Program.cs" >📝 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.
| <TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\Program.cs" label="Program.cs" > | |
| <TabItem value="Program.cs" label="Program.cs" > |
🤖 Prompt for AI Agents
In v2/rscg_examples_site/docs/RSCG-Examples/Program.md around line 164, the
TabItem value contains an absolute Windows path
("D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\Program.cs");
replace it with a repository-relative path (for example
"Program/src/TestProgram/Program.cs" or the correct relative path within the
repo) so the label is portable and does not expose local machine details,
ensuring the TabItem value is consistent with documentation standards.
| .WithName("GetTodos"); | ||
|
|
||
| todosApi.MapGet("/{id}", Results<Ok<Todo>, NotFound> (int id) => | ||
| sampleTodos.FirstOrDefault(a => a.Id == id) is \{ \} todo |
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.
Fix escaped braces in C# pattern matching syntax.
The backslashes before the braces (\{ \}) are incorrect and will be displayed literally in the documentation. This breaks the C# pattern matching syntax.
Apply this diff:
- sampleTodos.FirstOrDefault(a => a.Id == id) is \{ \} todo
+ sampleTodos.FirstOrDefault(a => a.Id == id) is { } todo📝 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.
| sampleTodos.FirstOrDefault(a => a.Id == id) is \{ \} todo | |
| sampleTodos.FirstOrDefault(a => a.Id == id) is { } todo |
🤖 Prompt for AI Agents
In v2/rscg_examples_site/docs/RSCG-Examples/Program.md around line 203, the C#
pattern-matching braces are escaped ("\{ \}") and thus render literally; remove
the backslashes so the snippet reads with normal braces (e.g., "is { } todo" or
"is {} todo" as appropriate) to restore correct C# syntax and display.
| <Tabs> | ||
|
|
||
|
|
||
| <TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\obj\GX\Microsoft.AspNetCore.App.SourceGenerators\Microsoft.AspNetCore.SourceGenerators.PublicProgramSourceGenerator\PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" > |
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.
Remove absolute Windows path from generated file tab label.
Similar to Line 164, this tab label contains an absolute Windows path that should be replaced with a relative path.
Apply this diff:
-<TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\obj\GX\Microsoft.AspNetCore.App.SourceGenerators\Microsoft.AspNetCore.SourceGenerators.PublicProgramSourceGenerator\PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" >
+<TabItem value="PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" >📝 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.
| <TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\obj\GX\Microsoft.AspNetCore.App.SourceGenerators\Microsoft.AspNetCore.SourceGenerators.PublicProgramSourceGenerator\PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" > | |
| <TabItem value="PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" > |
| ASP.NET Core | ||
| ============ | ||
|
|
||
| [](https://www.dotnetfoundation.org/) | ||
| [](https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt) [](https://github.com/dotnet/aspnetcore/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) [](https://github.com/dotnet/aspnetcore/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) | ||
| [](https://aka.ms/dotnet-discord) | ||
|
|
||
| ASP.NET Core is an open-source and cross-platform framework for building modern cloud-based internet-connected applications, such as web apps, IoT apps, and mobile backends. ASP.NET Core apps run on [.NET](https://dot.net), a free, cross-platform, and open-source application runtime. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac, and Linux. [Learn more about ASP.NET Core](https://learn.microsoft.com/aspnet/core/). | ||
|
|
||
| ## Get started | ||
|
|
||
| Follow the [Getting Started](https://learn.microsoft.com/aspnet/core/getting-started) instructions. | ||
|
|
||
| Also check out the [.NET Homepage](https://www.microsoft.com/net) for released versions of .NET, getting started guides, and learning resources. | ||
|
|
||
| See the [Triage Process](https://github.com/dotnet/aspnetcore/blob/main/docs/TriageProcess.md) document for more information on how we handle incoming issues. | ||
|
|
||
| ## How to engage, contribute, and give feedback | ||
|
|
||
| Some of the best ways to contribute are to try things out, file issues, join in design conversations, | ||
| and make pull-requests. | ||
|
|
||
| * [Download our latest daily builds](./docs/DailyBuilds.md) | ||
| * Follow along with the development of ASP.NET Core: | ||
| * [Community Standup](https://live.asp.net): The community standup is held every week and streamed live on YouTube. You can view past standups in the linked playlist. | ||
| * [Roadmap](https://aka.ms/aspnet/roadmap): The schedule and milestone themes for ASP.NET Core. | ||
| * [Build ASP.NET Core source code](./docs/BuildFromSource.md) | ||
| * Check out the [contributing](CONTRIBUTING.md) page to see the best places to log issues and start discussions. | ||
|
|
||
| ## Reporting security issues and bugs | ||
|
|
||
| Security issues and bugs should be reported privately to the Microsoft Security Response Center (MSRC) via the [MSRC Researcher Portal](https://msrc.microsoft.com/report/vulnerability/new). You should receive a response within 24 hours. Further information can be found in the [MSRC Report an Issue FAQ](https://www.microsoft.com/msrc/faqs-report-an-issue). You can also find these instructions in this repo's [Security doc](SECURITY.md). | ||
|
|
||
| Also see info about related [Microsoft .NET Bounty Program](https://www.microsoft.com/msrc/bounty-dot-net-core). | ||
|
|
||
| ## Related projects | ||
|
|
||
| These are some other repos for related projects: | ||
|
|
||
| * [Documentation](https://github.com/aspnet/Docs) - documentation sources for https://learn.microsoft.com/aspnet/core/ | ||
| * [Entity Framework Core](https://github.com/dotnet/efcore) - data access technology | ||
| * [Runtime](https://github.com/dotnet/runtime) - cross-platform runtime for cloud, mobile, desktop, and IoT apps | ||
| * [Razor](https://github.com/dotnet/razor) - the Razor compiler and tooling for working with Razor syntax (.cshtml, .razor) | ||
|
|
||
| ## Code of conduct | ||
|
|
||
| See [CODE-OF-CONDUCT](./CODE-OF-CONDUCT.md) | ||
|
|
||
| ## Nightly builds | ||
|
|
||
| This table includes links to download the latest builds of the ASP.NET Core Shared Framework. Also included are links to download the Windows Hosting Bundle, which includes the ASP.NET Core Shared Framework, the .NET Runtime Shared Framework, and the IIS plugin (ASP.NET Core Module). You can download the latest .NET Runtime builds [here](https://github.com/dotnet/runtime/blob/main/docs/project/dogfooding.md#nightly-builds-table), and the latest .NET SDK builds [here](https://github.com/dotnet/installer#table). **If you're unsure what you need, then install the SDK; it has everything except the IIS plugin.** | ||
|
|
||
| | Platform | Shared Framework (Installer) | Shared Framework (Binaries) | Hosting Bundle (Installer) | | ||
| | :--------- | :----------: | :----------: | :----------: | | ||
| | **Windows x64** | [Installer](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-win-x64.exe) | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-win-x64.zip) | [Installer](https://aka.ms/dotnet/10.0/daily/dotnet-hosting-win.exe) | | ||
| | **Windows x86** | [Installer](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-win-x86.exe) | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-win-x86.zip) | [Installer](https://aka.ms/dotnet/10.0/daily/dotnet-hosting-win.exe) | | ||
| | **Windows arm64** | [Installer](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-win-arm64.exe) | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-win-arm64.zip) | [Installer](https://aka.ms/dotnet/10.0/daily/dotnet-hosting-win.exe) | | ||
| | **macOS x64** | **N/A** | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-osx-x64.tar.gz) | **N/A** | | ||
| | **macOS arm64** | **N/A** | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-osx-arm64.tar.gz) | **N/A** | | ||
| | **Linux x64** | [Deb Installer](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-x64.deb) - [RPM Installer](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-x64.rpm) | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-linux-x64.tar.gz) | **N/A** | | ||
| | **Linux arm** | **N/A** | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-linux-arm.tar.gz) | **N/A** | | ||
| | **Linux arm64** | [RPM Installer](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-aarch64.rpm) | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-linux-arm64.tar.gz) | **N/A** | | ||
| | **Linux-musl-x64** | **N/A** | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-linux-musl-x64.tar.gz) | **N/A** | | ||
| | **Linux-musl-arm** | **N/A** | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-linux-musl-arm.tar.gz) | **N/A** | | ||
| | **Linux-musl-arm64** | **N/A** | [Binaries](https://aka.ms/dotnet/10.0/daily/aspnetcore-runtime-linux-musl-arm64.tar.gz) | **N/A** | |
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.
Replace with a focused example README.
This file contains the full ASP.NET Core framework README, which is off-topic for an RSCG example project. The example should have a concise README explaining what this specific Program.cs generation example demonstrates—e.g., the minimal Web API pattern, OpenAPI integration, and how the source generator is used.
Consider replacing this with a focused README like:
# Program.cs Example
This example demonstrates the use of `PublicTopLevelProgramGenerator` from Microsoft.AspNetCore.OpenApi to generate a minimal Web API with OpenAPI support.
## What it shows
- Generated Program.cs with top-level statements
- OpenAPI (Swagger) integration
- Todo API endpoints
- Development vs. production configuration
## Running the example
1. Open the solution or project
2. Run the application
3. Navigate to http://localhost:5219/todos
## Related files
- `Program.cs` - Generated entry point with Web API
- `launchSettings.json` - Local development configuration
- `TestProgram.http` - HTTP request samples🧰 Tools
🪛 LanguageTool
[style] ~18-~18: Try using a synonym here to strengthen your writing.
Context: ...ues. ## How to engage, contribute, and give feedback Some of the best ways to cont...
(GIVE_PROVIDE)
🤖 Prompt for AI Agents
In v2/rscg_examples/Program/readme.txt lines 1-65, the file currently contains
the full ASP.NET Core framework README which is off-topic for this example;
replace it with a concise, focused README describing what this specific
Program.cs generation example demonstrates (e.g., PublicTopLevelProgramGenerator
usage, minimal Web API pattern, OpenAPI/Swagger integration, Todo endpoints, dev
vs prod behavior), include brief sections: What it shows, Running the example
(steps to open/run and sample URL), and Related files (Program.cs,
launchSettings.json, TestProgram.http); remove the unrelated framework content
and ensure the new README is short, example-specific, and clearly points to the
generated Program.cs and how to exercise the sample.
| {"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-", | ||
| SpeakTest=" "}, | ||
| {"typeStep":"waitseconds","arg":"30"}, | ||
| ] |
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.
Fix JSON parse errors (invalid key syntax).
The object uses SpeakTest=" " which is not valid JSON. Use a quoted key and colon.
Apply this patch:
-{"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-",
-SpeakTest=" "},
+{"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-",
+"SpeakTest": " "},📝 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.
| {"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-", | |
| SpeakTest=" "}, | |
| {"typeStep":"waitseconds","arg":"30"}, | |
| ] | |
| {"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-", | |
| "SpeakTest": " "}, | |
| {"typeStep":"waitseconds","arg":"30"}, | |
| ] |
🧰 Tools
🪛 Biome (2.1.2)
[error] 35-36: Property key must be double quoted
(parse)
[error] 36-36: unexpected character =
(parse)
[error] 36-36: expected , but instead found " "
Remove " "
(parse)
[error] 36-36: expected : but instead found }
Remove }
(parse)
[error] 37-38: Expected an array, an object, or a literal but instead found ']'.
Expected an array, an object, or a literal here.
(parse)
🤖 Prompt for AI Agents
In v2/rscg_examples/Program/video.json around lines 35 to 38, the JSON object
uses invalid key syntax SpeakTest=" " which breaks parsing; replace it with a
proper JSON key/value pair "SpeakTest": " " and ensure the surrounding object
uses commas and colons correctly (e.g.,
{"typeStep":"browser","arg":"https://...","SpeakTest":" "},) so the array and
JSON remain valid.
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.
Pull request overview
This PR adds a new Roslyn Source Code Generator (RSCG) example called "Program" from Microsoft, which generates a public partial Program class for ASP.NET Core applications using top-level statements. This brings the total count to 237 RSCG examples (15 from Microsoft).
Key Changes
- Added new "Program" RSCG example (#237) demonstrating the PublicTopLevelProgramGenerator from Microsoft.AspNetCore.OpenApi
- Recategorized two existing RSCGs: "CommandLine" and "ConsoleAppFramework" moved to the CommandLine category
- Updated all documentation counts from 236→237 examples and 14→15 Microsoft examples
Reviewed changes
Copilot reviewed 30 out of 31 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| v2/rscg_examples_site/static/exports/RSCG.json | Added Program entry and updated categories for CommandLine and ConsoleAppFramework |
| v2/rscg_examples_site/static/exports/RSCG.xlsx | Added binary Excel export file with updated data |
| v2/rscg_examples_site/docs/RSCG-Examples/Program.md | New comprehensive documentation for Program RSCG with usage examples |
| v2/rscg_examples_site/docs/indexRSCG.md | Updated main index with new entry and corrected counts |
| v2/rscg_examples_site/src/components/HomepageFeatures/index.js | Updated homepage feature count |
| v2/rscg_examples/Program/src/TestProgram/Program.cs | Added ASP.NET Core minimal API example demonstrating the generator |
| v2/rscg_examples/Program/video.json | Added video script configuration for the example |
| v2/.tours/Program.tour | Added VS Code tour configuration for the example |
| v2/rscg_examples_site/docs/Categories/*.md | Updated category pages with new counts and entry placements |
| README.md | Updated main README with new example and corrected counts |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ,{ | ||
| "file": "rscg_examples/Program/src/TestProgram/Program.cs", | ||
| "description": "File Program.cs \r\n>> dotnet run --project rscg_examples/Program/src/TestProgram/TestProgram.csproj ", | ||
| "pattern": "this is the code" |
Copilot
AI
Nov 26, 2025
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.
Pattern description is unclear. The value "this is the code" doesn't meaningfully describe what pattern should be matched in Program.cs. Consider using a more specific pattern that helps locate the relevant code section, or a descriptive comment that exists in the file.
| "pattern": "this is the code" | |
| "pattern": "// Program entry point" |
| SpeakTest=" "}, | ||
| {"typeStep":"waitseconds","arg":"30"}, |
Copilot
AI
Nov 26, 2025
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.
Missing comma after the last array element. The JSON array has a trailing comma after the last object (line 37), which will cause a parse error in strict JSON parsers.
| SpeakTest=" "}, | |
| {"typeStep":"waitseconds","arg":"30"}, | |
| SpeakTest=" "} | |
| {"typeStep":"waitseconds","arg":"30"} |
| {"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-", | ||
| SpeakTest=" "}, |
Copilot
AI
Nov 26, 2025
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.
Inconsistent property naming in JSON object. Line 36 has SpeakTest=" " instead of using the camelCase pattern speakTest or "arg" key like other properties in the array. This inconsistency could cause issues if the parser expects specific property names.
| {"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-", | |
| SpeakTest=" "}, | |
| {"typeStep":"browser","arg":"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Program#download-example-net--c-"}, |
| .WithName("GetTodos"); | ||
|
|
||
| todosApi.MapGet("/{id}", Results<Ok<Todo>, NotFound> (int id) => | ||
| sampleTodos.FirstOrDefault(a => a.Id == id) is \{ \} todo |
Copilot
AI
Nov 26, 2025
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.
Escaped curly braces in markdown code block. The braces in is \{ \} should be is { }. The backslash escaping is unnecessary and will be displayed in the rendered markdown.
| sampleTodos.FirstOrDefault(a => a.Id == id) is \{ \} todo | |
| sampleTodos.FirstOrDefault(a => a.Id == id) is { } todo |
| /// <summary> | ||
| /// Auto-generated public partial Program class for top-level statement apps. | ||
| /// </summary> | ||
| public partial class Program \{ } |
Copilot
AI
Nov 26, 2025
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.
Escaped curly braces in markdown code block. The braces in public partial class Program \{ } should be public partial class Program { }. The backslash escaping is unnecessary and will be displayed in the rendered markdown.
| public partial class Program \{ } | |
| public partial class Program { } |
Added a new example for RSCG 237 (Program) including HTML documentation and downloadable source zip. Updated the list and YAML to include the new example, adjusted link replacements in MultiGeneratorV2.cs for better path handling, and improved external link references in Program.md. Also updated the RSCG.xlsx export file.
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
♻️ Duplicate comments (4)
v2/rscg_examples_site/docs/RSCG-Examples/Program.md (4)
164-164: Remove absolute Windows path from tab label.The TabItem value contains an absolute Windows file system path that should be replaced with a repository-relative path. This was flagged in a previous review and remains unresolved.
- <TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\Program.cs" label="Program.cs" > + <TabItem value="Program.cs" label="Program.cs" >
203-203: Fix escaped braces in C# pattern matching syntax.The backslashes before the braces (
\{ \}) are incorrect and will be displayed literally in the documentation, breaking the C# pattern matching syntax. This was flagged in previous reviews and remains unresolved.- sampleTodos.FirstOrDefault(a => a.Id == id) is \{ \} todo + sampleTodos.FirstOrDefault(a => a.Id == id) is { } todo
229-229: Remove absolute Windows path from generated file tab label.The TabItem value contains an absolute Windows path that should be replaced with a relative path or simple filename. This was flagged in a previous review and remains unresolved.
-<TabItem value="D:\gth\RSCG_Examples\v2\rscg_examples\Program\src\TestProgram\obj\GX\Microsoft.AspNetCore.App.SourceGenerators\Microsoft.AspNetCore.SourceGenerators.PublicProgramSourceGenerator\PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" > +<TabItem value="PublicTopLevelProgram.Generated.g.cs" label="PublicTopLevelProgram.Generated.g.cs" >
235-235: Fix escaped braces in generated code example.The backslashes before the braces (
\{ \}) are incorrect and will be displayed literally in the documentation. This was flagged in previous reviews and remains unresolved.-public partial class Program \{ } +public partial class Program { }
🧹 Nitpick comments (2)
v2/rscg_examples_site/docs/RSCG-Examples/Program.md (1)
154-157: Replace hard tabs with spaces in XML snippet.Lines 154–157 contain hard tabs that should be converted to spaces for consistent formatting in the documentation.
</PropertyGroup> - - <PropertyGroup> - <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles> - <CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath> - </PropertyGroup> + + <PropertyGroup> + <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles> + <CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath> + </PropertyGroup>v2/Generator/MultiGeneratorV2.cs (1)
141-152: New link rewrites look correct; consider de‑duplicating and consolidating rulesThe added replacements for
"(./docs/","(CONTRIBUTING","(SECURITY", and"(./CODE-OF-CONDUCT"correctly normalize more relative links tod.Generator!.Sourceand should behave as intended, including cases like"(CONTRIBUTING.md#section)".There are a couple of small maintainability nits you might want to tidy up later:
"(./docs/"is now handled twice (here and again at Line 209). The second call is a no‑op after the first, so one of them can be removed.- The generic rules for
"(CONTRIBUTING","(SECURITY", and"(./CODE-OF-CONDUCT"make the more specific.mdvariants at Lines 210–214 largely redundant. They’re harmless, but you could either:
- Remove the now‑superfluous specific rules, or
- Move all of these patterns into a small table (old → new) and loop over it to keep this block from growing more error‑prone.
Functionally this is fine; these are just optional cleanups for clarity and to avoid subtle future ordering issues as more patterns are added.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
v2/rscg_examples_site/static/exports/RSCG.xlsxis excluded by!**/*.xlsxv2/rscg_examples_site/static/sources/Program.zipis excluded by!**/*.zip
📒 Files selected for processing (5)
v2/Generator/MultiGeneratorV2.cs(1 hunks)v2/book/examples/Program.html(1 hunks)v2/book/list.html(2 hunks)v2/book/pandocHTML.yaml(1 hunks)v2/rscg_examples_site/docs/RSCG-Examples/Program.md(1 hunks)
✅ Files skipped from review due to trivial changes (2)
- v2/book/list.html
- v2/book/examples/Program.html
🧰 Additional context used
🧬 Code graph analysis (1)
v2/Generator/MultiGeneratorV2.cs (1)
v2/Generator/Generator.cs (1)
Generator(4-145)
🪛 LanguageTool
v2/rscg_examples_site/docs/RSCG-Examples/Program.md
[style] ~71-~71: Try using a synonym here to strengthen your writing.
Context: ...ues. ## How to engage, contribute, and give feedback Some of the best ways to cont...
(GIVE_PROVIDE)
🪛 markdownlint-cli2 (0.18.1)
v2/rscg_examples_site/docs/RSCG-Examples/Program.md
31-31: Bare URL used
(MD034, no-bare-urls)
36-36: Bare URL used
(MD034, no-bare-urls)
39-39: Bare URL used
(MD034, no-bare-urls)
41-41: Bare URL used
(MD034, no-bare-urls)
54-54: Heading style
Expected: atx; Actual: setext
(MD003, heading-style)
78-78: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
79-79: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
93-93: Bare URL used
(MD034, no-bare-urls)
104-104: Link text should be descriptive
(MD059, descriptive-link-text)
104-104: Link text should be descriptive
(MD059, descriptive-link-text)
154-154: Hard tabs
Column: 1
(MD010, no-hard-tabs)
155-155: Hard tabs
Column: 1
(MD010, no-hard-tabs)
156-156: Hard tabs
Column: 1
(MD010, no-hard-tabs)
157-157: Hard tabs
Column: 1
(MD010, no-hard-tabs)
247-247: Spaces inside link text
(MD039, no-space-in-links)
261-261: Bare URL used
(MD034, no-bare-urls)
⏰ 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). (1)
- GitHub Check: call-workflow-passing-data / build (24.3.0)
🔇 Additional comments (1)
v2/book/pandocHTML.yaml (1)
252-253: Inconsistency between AI summary and code state.The AI-generated summary states "Removed input-file: examples/validly.html," but line 252 still shows
- examples/validly.htmlwithout a removal marker, while line 253 adds- examples/Program.html. This means both entries are present, which would increase the example count from 236 to 238 (not 237 as the PR objective indicates).Verify that this change aligns with the PR intent: if
validly.htmlshould be removed and replaced byProgram.html(net +1), then line 252 should be removed. If both should remain, the example count should be 238, not 237.
Summary by CodeRabbit
New Features
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.