Fix bug complaining about csharp on Mac when calling dev command - #5867
Merged
Conversation
lisandroct
marked this pull request as draft
September 3, 2026 18:14
lisandroct
marked this pull request as ready for review
September 3, 2026 19:03
rekhoff
approved these changes
Sep 3, 2026
rekhoff
left a comment
Contributor
There was a problem hiding this comment.
The changes make sense to me as a path to resolve the outstanding bug, but I have not personally tested them on a Mac
jonahsnider Bot
added a commit
to jonahsnider/homebrew-tap
that referenced
this pull request
Sep 5, 2026
Created by `brew bump` --- Created with `brew bump-formula-pr`.<details> <summary>release notes</summary> <pre>## Features ### C# NativeAOT monomorphized dispatch Generated C# module exports now dispatch directly to statically-known generic entrypoints for reducers, procedures, HTTP handlers, views, and anonymous views when building with NativeAOT-LLVM. This eliminates virtual dispatch overhead at the module boundary and improves NativeAOT module performance. ([#5610](<clockworklabs/SpacetimeDB#5610>)) ### MCP support on Maincloud The SpacetimeDB MCP endpoint (`/v1/mcp`) is now available on Maincloud. You can connect AI agents and MCP-compatible tools directly to your Maincloud databases. This release also adds cluster-aware routing so that MCP requests sent to any node are automatically proxied to the leader replica, along with egress tracking for MCP tool calls. ([#5849](<clockworklabs/SpacetimeDB#5849>), [#5793](<clockworklabs/SpacetimeDB#5793>)) ## Bug Fixes ### TypeScript SDK: route mid-session websocket errors to onDisconnect The TypeScript SDK's `ws.onerror` handler previously treated every websocket error as a connection failure, even on established connections. This fired `onConnectError` instead of `onDisconnect`, silently disabled the outbound send path, and left the client in a stalled state with no reconnect. Mid-session errors now close the socket and fire `onDisconnect` with the error, allowing existing reconnect handling to take over. ([#5707](<clockworklabs/SpacetimeDB#5707>)) ### Fix C++ auto-increment macro symbol collisions C++ auto-increment field macros previously used `__LINE__` to generate symbols, causing collisions when two table definitions in separate files had an auto-increment field on the same line number. Macros now use table and field names to guarantee unique symbols. ([#5836](<clockworklabs/SpacetimeDB#5836>)) ### Fix `spacetime dev` C# complaint on macOS The `spacetime dev` command no longer incorrectly warns about C# on macOS when C# is not in use. ([#5867](<clockworklabs/SpacetimeDB#5867>)) ## What's Changed - Allow monomorphization for C# NativeAOT reducers, procedures, HTTP handlers, and views in [#5610](<clockworklabs/SpacetimeDB#5610>) - Add MCP request routing to leader replica in [#5849](<clockworklabs/SpacetimeDB#5849>) - Add egress tracking for MCP requests in [#5793](<clockworklabs/SpacetimeDB#5793>) - Route TypeScript SDK mid-session websocket errors to onDisconnect in [#5707](<clockworklabs/SpacetimeDB#5707>) - Fix C++ auto-increment macro symbol collisions in [#5836](<clockworklabs/SpacetimeDB#5836>) - Fix `spacetime dev` C# warning on macOS in [#5867](<clockworklabs/SpacetimeDB#5867>) **Full Changelog**: [v2.9.0...v2.10.0](<https://github.com/clockworklabs/SpacetimeDB/compare/v2.9.0...release/candidate/v2.10.0>)</pre> <p>View the full release notes at <a href="https://github.com/clockworklabs/SpacetimeDB/releases/tag/v2.10.0">https://github.com/clockworklabs/SpacetimeDB/releases/tag/v2.10.0</a>.</p> </details> <hr> --------- Co-authored-by: Anka <runner@sjc22-bm210-84d28139-e2f6-4b7c-92ee-6c21afdf23c2-32D5D422D197.local> Co-authored-by: jonahsnider[bot] <287348350+jonahsnider[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of Changes
In #5571, we were always selecting a default dotnet version and passing it down to
init. Obviously, when we were not targeting C#, the CLI would later complain that the dotnet version wasn't required. Effectively, if you were callingspacetime dev --template basic-rs, we were later doingspacetime init --template basic-rs --dotnet-version 10.This PR fixes that behavior.
API and ABI breaking changes
None. This only changes CLI.
Rollback safety impact
n/a
Expected complexity level and risk
spacetime devbehavior. That being said, it touches howdevinteracts withinit,generateandpublish(which was the source of the issue).Testing
spacetime devwith C# and Rust templates successfully on Linux