Repository navigation
Add packaged F# async trimming smoke coverage - #7562
Conversation
|
No actionable comments were generated in the recent review. Walkthrough
Merge Risk:
|
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
ReviewSolid addition. The script checks the packaged archive, isolates consumers from repo build settings, and covers the normal, runtime-only, no-FSharp.Core and negative-control scenarios. The negative control is the strongest part: it proves the check can actually fail with Minor suggestions, none blocking:
Overall this looks good to merge once CI on Ubuntu confirms the run. |
|
Codex Review: Didn't find any major issues. You're on a roll. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
[Low impact] The PR appears safe to merge; the previous CI exit-code issue is fixed. SummaryAdds packaged F# async trimming smoke tests to the Ubuntu documentation job.
Reviews (2) · Last reviewed commit: "Fix successful trimming smoke script exi..." · Reviewed by Greptile |
|
Disposition of Claude’s nonblocking suggestions on 274c521:
Greptile’s blocking exit-code finding is fixed in e333c0d and its thread is resolved. PowerShell syntax and focused success/failure exit checks passed; full packaged publish remains covered by the prior validation and CI. |
|
@codex review |
ReviewNice addition. It checks packaging (the descriptor sits next to every targets file) and runtime behaviour (async body runs, exceptions propagate). The Suggestions (none blocking):
Overall this looks good to merge once CI on Ubuntu confirms the four scenarios pass. |
|
Codex Review: Didn't find any major issues. Bravo. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Reviewed all review surfaces for e333c0d. Codex reports no findings and Claude explicitly reports no blockers. Disposition of the latest Claude suggestions: retain the fail-safe negative control and existing packaging failure message; neither can silently pass when its assumption changes. PowerShell 7 is the supported CI runtime, so Windows PowerShell compatibility is unnecessary. The central FSharp.Core version is already pinned; network restore is expected. Keep the check in the existing package-producing documentation job and retain the explicit final exit 0: all unexpected failures throw before it. These are nonblocking clarity suggestions and require no further code change. Promoting this reviewed head to ready so Ubuntu and the remaining CI can validate it. Auto-merge will be considered after the ready-for-review Claude run completes. |
ReviewThis is a solid regression guard for #7533. It checks the packaged descriptor in the nupkg, not the source pack items. It covers both FSharp.Core reference modes, and a C# consumer without FSharp.Core. The negative control is the strongest part: it fails specifically on Non-blocking suggestions:
Overall this is good to merge once CI on Ubuntu passes, since the author notes that run has not happened yet. |
Closes #7533
Adds a packaged trimmed-publish smoke test to the existing Ubuntu job that builds and packs libraries for documentation validation. The script consumes the freshly produced TUnit.Core package from an isolated NuGet cache, checks that the linker descriptor sits beside every targets file in both build layouts, and publishes self-contained, non-AOT net10.0 consumers.
F# workflows must execute an asynchronous side effect and propagate an asynchronous exception with both normal and runtime-only (
ExcludeAssets="compile") FSharp.Core references. A C# consumer without FSharp.Core must publish without warnings. A negative control removes only the preservation descriptor and must fail specifically withASYNC_BODY_SKIPPED, proving the execution check detects the original regression. CI uploads publish and execution logs.Validation: built and packed TUnit.Core and its analyzer dependencies with SDK 10.0.403 on macOS arm64, then ran
pwsh scripts/Verify-FSharpTrimming.ps1 -PackagesPath artifacts/trim-packages -Version 99.99.99. All four scenarios passed, including the expected negative-control failure. FSharp.Core publishes retain the known IL2040 resource warnings; C# emitted none. Existing analyzer/code-fixer build warnings were confirmed on #7410. Ubuntu execution will be validated by CI after draft promotion.Summary by CodeRabbit