Skip to content

[repo-assist] Fix Fable CI build: unpin Microsoft.Bcl.AsyncInterfaces version - #335

Open
github-actions[bot] wants to merge 2 commits into
mainfrom
repo-assist/fix-issue-334-fable-ci-fa7f3f13f3359ff2
Open

[repo-assist] Fix Fable CI build: unpin Microsoft.Bcl.AsyncInterfaces version#335
github-actions[bot] wants to merge 2 commits into
mainfrom
repo-assist/fix-issue-334-fable-ci-fa7f3f13f3359ff2

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

🤖 This pull request was created by Repo Assist, an automated AI assistant, in response to /repo-assist Try to fix this please on issue #334.

Root Cause

FSharp.Control.AsyncSeq.fsproj pinned Microsoft.Bcl.AsyncInterfaces to an exact version (10.0.7), while System.Threading.Channels (referenced with Version="*") resolved to 10.0.11, which transitively requires Microsoft.Bcl.AsyncInterfaces >= 10.0.11. This created a NU1605 package-downgrade warning during restore.

Fable's dotnet fable command uses MSBuild's design-time build to "crack" the project and resolve compiler args. When NU1605 warnings are present, Fable's project cracker (ProjectCracker.fs) throws an unhandled System.Exception, aborting the whole dotnet fable invocation — this is what broke CI (Test Fable step in pull-request.yml).

Fix

Changed the Microsoft.Bcl.AsyncInterfaces package reference from a pinned 10.0.7 to Version="*" (matching the existing pattern used for System.Threading.Channels), so both packages resolve to their latest compatible versions without conflicting.

Trade-offs

  • Version="*" means the package version isn't locked, matching the existing convention already used for System.Threading.Channels in this project. This keeps consistency rather than introducing stricter pinning.
  • No API or behavioral changes — this is purely a build/dependency-resolution fix.

Test Status

✅ Build succeeded: dotnet test -c Release — 476/476 tests passed, 0 failures.
✅ Fable tests now pass: cd tests/fable && npm i && npm test — 78/78 tests passed (previously failed with an unhandled NU1605-triggered exception during dotnet fable).

Generated by 🌈 Repo Assist, see workflow run. Learn more.
Comment /repo-assist to run again

Add this agentic workflow to your repo

To install this agentic workflow, run

gh aw add githubnext/agentics/workflows/repo-assist.md@ae8d551f07c7ed7619f8c58c7bb4c3ac89395d38

Microsoft.Bcl.AsyncInterfaces was pinned to 10.0.7 while System.Threading.Channels
resolved to a newer transitive dependency (10.0.11), causing a NU1605 package
downgrade error. This made Fable's MSBuild-based project cracker fail with an
unhandled exception during 'dotnet fable', breaking CI.

Fixes #334.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fable is failing in CI, may need to be updated to latest Fable 5.0

1 participant