RepoJournal
.NET

@dotnet

The .NET runtime, ASP.NET, and the C# tooling

Keep up with .NET in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: .NET Full archive →

The Wire · Showcase

FSHARP KILLS PARALLEL COMPILATION RACE, MAUI HARDENS PREVIEW GATES

By RepoJournal · Filed · About .NET

F# shipped a critical fix for a concurrency bug that could strand provided types during parallel compilation, while MAUI tightened release-readiness automation to prevent cross-major version leaks.

The F# team closed a nasty race condition in graph-based type checking [1]. Under parallel compilation, namespace entities on provided type paths were appended non-atomically and deduplicated with a check-then-act pattern, allowing concurrent linking from multiple files to build disjoint namespace subtrees and orphan types with spurious FS0001 errors. The fix interns namespace entities and uses the same lock-free CAS design already proven for provided-type entities [2]. This is production-critical if you're running parallel builds with type providers. Meanwhile, MAUI hardened its dependency-flow and release-readiness tooling with a public-safe preview release gate [3] [4], adding cross-major version leak detection, E2E refresh logic, and hoisted candidate-PR sections to prevent preview versions from escaping into production channels. On the runtime side, a new GCHandle release-semantics fix [5] closes a weak-ordering vulnerability on ARM64 where partially initialized objects could leak through GC handle slots before initialization writes propagated. The team also optimized `string.Split(char, ...)` with 20-47% gains [6] on the single-char overload, the most common case. MAUI and the skills repo both added support for newer solution formats (slnf/slnx) [7] alongside traditional .sln files, and F# pulled in fresh Roslyn and MSBuild updates [8] [9].

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Intern provided namespaces to fix parallel-compilation resolution race ↗ dotnet/fsharp
  2. [2] Intern provided namespaces to fix parallel-compilation resolution race (#20021) dotnet/fsharp
  3. [3] Add public-safe preview release readiness gate to dependency-flow skill ↗ dotnet/maui
  4. [4] Release-readiness: cross-major preview leak fix, milestone blocker, E2E refresh, and hoisted candidate-PR section ↗ dotnet/maui
  5. [5] Publish GCHandle assignments with release semantics ↗ dotnet/runtime
  6. [6] Optimize `string.Split(char, ...)` ↗ dotnet/runtime
  7. [7] Add slnf and slnx solution formats to run-tests skill ↗ dotnet/skills
  8. [8] [main] Update dependencies from dotnet/roslyn ↗ dotnet/fsharp
  9. [9] [main] Update dependencies from dotnet/msbuild ↗ dotnet/fsharp

Quick answers

What shipped in .NET on July 6, 2026?
F# shipped a critical fix for a concurrency bug that could strand provided types during parallel compilation, while MAUI tightened release-readiness automation to prevent cross-major version leaks. In total, 14 commits, 14 pull requests, and 1 releases landed.
Who contributed to .NET on July 6, 2026?
6 developers shipped this update, including T-Gro, PureWeen, BradBarnich, hamarb123, Evangelink, and dotnet-maestro[bot].
What were the notable .NET updates?
Intern provided namespaces to fix parallel-compilation resolution race, Intern provided namespaces to fix parallel-compilation resolution race (#20021), and Add public-safe preview release readiness gate to dependency-flow skill.

More from @dotnet

Daily updates, in your inbox

Follow .NET

Keep up with .NET in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?

We use privacy-friendly analytics (Google Analytics, IP-anonymized) to see which pages help readers. No ads, and we never sell your data. See our Privacy Policy.